Vodafone Test Suite
Dependencies: mbed-rtos mbed HTTPClient VodafoneUSBModem
Tests/Test16.h
- Committer:
- ashleymills
- Date:
- 2012-09-13
- Revision:
- 33:16126e029d58
- Parent:
- 31:9231acdde9ff
- Child:
- 34:d9e45aad85f2
File content as of revision 33:16126e029d58:
#pragma once #include "VodafoneTestCase.h" //#define __DEBUG__ 1 // this test case will wait to send an SMS from the modem. // if the method that sends a message returns an error it will fail. // it will report the test as failed if any of the above happens. // it does not wait after it has succesfully sent an SMS. // this test basic characters and numbers can be sent via SMS. static const char *gTest16Description = "Send an SMS message with basic characters and numbers..."; class Test16 : public VodafoneTestCase { public: Test16(VodafoneUSBModem *m) : VodafoneTestCase(m) { _description = gTest16Description; _testCaseNumber = 16; } virtual bool runTest() { LinkMonitor::REGISTRATION_STATE regState = LinkMonitor::REGISTRATION_STATE_UNKNOWN; LinkMonitor::BEARER bearer = LinkMonitor::BEARER_UNKNOWN; int rssi = -1000; if(_modem->getLinkState(&rssi, ®State, &bearer)==0) { if(rssi==-1000) { LOG("Checking signal strength - RSSI: Error."); return false;} else { LOG("Signal strength is: 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"); return false; case LinkMonitor::REGISTRATION_STATE_NO_SIGNAL: LOG("regState: NO SIGNAL"); return false; 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; } } LOG("Test %d sending an SMS message...", _testCaseNumber); LOG("Sending SMS:' %s ' to test phone: %s , waiting for response.", alphabetNumbersMessage, testPhoneNumber); int ret = _modem->sendSM(testPhoneNumber, alphabetNumbersMessage); if (ret) { LOG("Error in sending the SMS message. The return values is: %d", ret); switch(ret){ case(NET_INVALID): LOG("Error message is: 'phone number is invalid size, must be less than 16 digits'.");break; case(NET_PROTOCOL): LOG("Error message is: 'protocol error from the modem'.");break; default: LOG("Undefined error message."); } return false; } LOG("Test %d passed...", _testCaseNumber); return true; } private: };