Vodafone Test Suite
Dependencies: mbed-rtos mbed HTTPClient VodafoneUSBModem
Tests/Test26.h
- Committer:
- ashleymills
- Date:
- 2012-09-05
- Revision:
- 22:5b1feecf2aeb
- Child:
- 23:408199b5d2cb
File content as of revision 22:5b1feecf2aeb:
#pragma once #include "VodafoneTestCase.h" class Test26 : public VodafoneTestCase { public: Test26(VodafoneUSBModem *m, int tcNumber) : VodafoneTestCase(m, tcNumber) { } virtual void setupTest() { _ussdResponse = (char*)malloc(16*sizeof(char)); } virtual bool runTest() { LOG("Test %d, getting signal strength 30 times.", _testCaseNumber); for(int count=0; count<30; count++) { LOG("Iteration %d of 30",count); 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; break; 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; break; } switch(bearer) { case LinkMonitor::BEARER_UNKNOWN: LOG("bearer: UNKNOWN. Failing."); return false; break; 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; break; } } else { return false; } } return true; } virtual void endTest() { free(_ussdResponse); } private: char *_ussdResponse; };