Vodafone Test Suite
Dependencies: mbed-rtos mbed HTTPClient VodafoneUSBModem
Tests/Test25.h
- Committer:
- ashleymills
- Date:
- 2012-09-06
- Revision:
- 26:9eefab9e28df
- Parent:
- 25:55b865c41f21
- Child:
- 27:0297dbc3252b
File content as of revision 26:9eefab9e28df:
#pragma once #include "VodafoneTestCase.h" static const char* gTest25Description = "Retrieve signal strength and print it.\0"; const int gTest25Depends[] = {}; class Test25 : public VodafoneTestCase { public: Test25(VodafoneUSBModem *m, int tcNumber) : VodafoneTestCase(m, tcNumber) { } virtual void setupTest() { } virtual bool runTest() { LOG(gTest25Description); int rssi = -1000; LinkMonitor::REGISTRATION_STATE regState = LinkMonitor::REGISTRATION_STATE_UNKNOWN; LinkMonitor::BEARER bearer = LinkMonitor::BEARER_UNKNOWN; if(_modem->getLinkState(&rssi, ®State, &bearer)==0) { if(rssi==-1000) { LOG("RSSI: Error."); return false; } else { LOG("RSSI: %d",rssi); } switch(regState) { case LinkMonitor::REGISTRATION_STATE_UNKNOWN: LOG("regState: UNKNOWN. Failing."); return false; case LinkMonitor::REGISTRATION_STATE_REGISTERING: LOG("regState: REGISTERING"); break; case LinkMonitor::REGISTRATION_STATE_DENIED: LOG("regState: DENIED"); break; case LinkMonitor::REGISTRATION_STATE_NO_SIGNAL: LOG("regState: NO SIGNAL"); break; case LinkMonitor::REGISTRATION_STATE_HOME_NETWORK: LOG("regState: HOME NETWORK"); break; case LinkMonitor::REGISTRATION_STATE_ROAMING: LOG("regState: ROAMING"); break; default: LOG("regState: ERROR. Failing."); return false; } switch(bearer) { case LinkMonitor::BEARER_UNKNOWN: LOG("bearer: UNKNOWN. Failing."); return false; case LinkMonitor::BEARER_GSM: LOG("bearer: GSM"); break; case LinkMonitor::BEARER_EDGE: LOG("bearer: EDGE"); break; case LinkMonitor::BEARER_UMTS: LOG("bearer: UMTS"); break; case LinkMonitor::BEARER_HSPA: LOG("bearer: HSPA"); break; case LinkMonitor::BEARER_LTE: LOG("bearer: LTE"); break; default: LOG("bearer: ERROR. Failing."); return false; } } else { return false; } return true; } virtual void endTest() { } private: };