ACKme
/
wiconnect-test-console
Test serial console demonstrating various API functions of WiConnect library.
Diff: tests/blocking/network/NetworkTests.cpp
- Revision:
- 0:836c9a6383e0
- Child:
- 1:5137ec8f4c45
diff -r 000000000000 -r 836c9a6383e0 tests/blocking/network/NetworkTests.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/blocking/network/NetworkTests.cpp Mon Aug 11 11:31:32 2014 +0000 @@ -0,0 +1,103 @@ +/* + * Copyright 2014, ACKme Networks + * All Rights Reserved. + * + * This is UNPUBLISHED PROPRIETARY SOURCE CODE of ACKme Networks; + * the contents of this file may not be disclosed to third parties, copied + * or duplicated in any form, in whole or in part, without the prior + * written permission of ACKme Networks. + */ + + +#include "tests/Tests.h" +#include "Wiconnect.h" + + + +/*************************************************************************************************/ +WiconnectResult networkStatsCommand(int argc, char **argv) +{ + WiconnectResult result; + Wiconnect *wiconnect = Wiconnect::getInstance(); + NetworkStatus status; + NetworkSignalStrength signal; + uint32_t ip, nm, gw; + bool dhcpEnabled; + + if(WICONNECT_FAILED(result, wiconnect->getIpSettings(&ip, &nm, &gw))) + { + LOG_INFO("Failed to get IP Settings"); + } + else if(WICONNECT_FAILED(result, wiconnect->setDhcpEnabled(&dhcpEnabled))) + { + LOG_INFO("Failed to get DHCP setting"); + } + else if(WICONNECT_FAILED(result, wiconnect->getNetworkStatus(&status))) + { + LOG_INFO("Failed to get network status"); + } + else if(WICONNECT_FAILED(result, wiconnect->getSignalStrength(&signal))) + { + LOG_INFO("Failed to get signal strength"); + } + else + { + char ipStr[16], gwStr[16], nmStr[16]; + + LOG_INFO("\r\n------------------------\r\n" + "IP: %s\r\n" + "Netmask: %s\r\n" + "Gateway: %s\r\n" + "DHCP enabled: %s\r\n" + "Status: %s\r\n" + "Signal: %s\r\n" + "------------------------", + Wiconnect::ipToStr(ip, ipStr), + Wiconnect::ipToStr(nm, nmStr), + Wiconnect::ipToStr(gw, gwStr), + dhcpEnabled ? "true" : "false", + Wiconnect::networkStatusToStr(status), + Wiconnect::signalStrengthToStr(signal)); + + } + + return result; +} + +/*************************************************************************************************/ +WiconnectResult networkPingCommand(int argc, char **argv) +{ + WiconnectResult result; + Wiconnect *wiconnect = Wiconnect::getInstance(); + + uint32_t pingTimeMs; + const char *domain = (argc > 0) ? argv[0] : NULL; + + if(!WICONNECT_FAILED(result, wiconnect->ping(domain, &pingTimeMs))) + { + LOG_INFO("Ping reply: %dms", pingTimeMs); + } + return result; +} + +/*************************************************************************************************/ +WiconnectResult networkLookupCommand(int argc, char **argv) +{ + WiconnectResult result; + Wiconnect *wiconnect = Wiconnect::getInstance(); + + if(argc != 1) + { + return WICONNECT_BAD_ARG; + } + + uint32_t ipAddress; + + if(!WICONNECT_FAILED(result, wiconnect->lookup(argv[0], &ipAddress))) + { + IpStrBuffer buffer; + LOG_INFO("IP Address: %s", Wiconnect::ipToStr(ipAddress, buffer)); + } + return result; +} +