Vodafone Test Suite
Dependencies: mbed-rtos mbed HTTPClient VodafoneUSBModem
Tests/Test26.h@33:16126e029d58, 2012-09-13 (annotated)
- Committer:
- ashleymills
- Date:
- Thu Sep 13 10:05:31 2012 +0000
- Revision:
- 33:16126e029d58
- Parent:
- 27:0297dbc3252b
- Child:
- 34:d9e45aad85f2
Changed test framework.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ashleymills | 22:5b1feecf2aeb | 1 | #pragma once |
ashleymills | 22:5b1feecf2aeb | 2 | #include "VodafoneTestCase.h" |
ashleymills | 25:55b865c41f21 | 3 | |
ashleymills | 27:0297dbc3252b | 4 | static const char* gTest26Description = "x30 -> Retrieve signal strength and print it."; |
ashleymills | 27:0297dbc3252b | 5 | //const int gTest26Depends[] = {}; |
ashleymills | 25:55b865c41f21 | 6 | |
ashleymills | 22:5b1feecf2aeb | 7 | class Test26 : public VodafoneTestCase { |
ashleymills | 22:5b1feecf2aeb | 8 | public: |
ashleymills | 33:16126e029d58 | 9 | Test26(VodafoneUSBModem *m) : VodafoneTestCase(m) { |
ashleymills | 33:16126e029d58 | 10 | _description = gTest26Description; |
ashleymills | 33:16126e029d58 | 11 | _testCaseNumber = 26; |
ashleymills | 22:5b1feecf2aeb | 12 | } |
ashleymills | 22:5b1feecf2aeb | 13 | |
ashleymills | 22:5b1feecf2aeb | 14 | virtual void setupTest() { |
ashleymills | 23:408199b5d2cb | 15 | |
ashleymills | 22:5b1feecf2aeb | 16 | } |
ashleymills | 22:5b1feecf2aeb | 17 | |
ashleymills | 22:5b1feecf2aeb | 18 | virtual bool runTest() { |
ashleymills | 25:55b865c41f21 | 19 | LOG(gTest26Description); |
ashleymills | 22:5b1feecf2aeb | 20 | for(int count=0; count<30; count++) { |
ashleymills | 22:5b1feecf2aeb | 21 | LOG("Iteration %d of 30",count); |
ashleymills | 22:5b1feecf2aeb | 22 | int rssi = -1000; |
ashleymills | 22:5b1feecf2aeb | 23 | LinkMonitor::REGISTRATION_STATE regState = LinkMonitor::REGISTRATION_STATE_UNKNOWN; |
ashleymills | 22:5b1feecf2aeb | 24 | LinkMonitor::BEARER bearer = LinkMonitor::BEARER_UNKNOWN; |
ashleymills | 22:5b1feecf2aeb | 25 | |
ashleymills | 22:5b1feecf2aeb | 26 | if(_modem->getLinkState(&rssi, ®State, &bearer)==0) { |
ashleymills | 22:5b1feecf2aeb | 27 | if(rssi==-1000) { |
ashleymills | 22:5b1feecf2aeb | 28 | LOG("RSSI: Error."); |
ashleymills | 22:5b1feecf2aeb | 29 | return false; |
ashleymills | 22:5b1feecf2aeb | 30 | } else { |
ashleymills | 22:5b1feecf2aeb | 31 | LOG("RSSI: %d",rssi); |
ashleymills | 22:5b1feecf2aeb | 32 | } |
ashleymills | 22:5b1feecf2aeb | 33 | |
ashleymills | 22:5b1feecf2aeb | 34 | switch(regState) { |
ashleymills | 22:5b1feecf2aeb | 35 | case LinkMonitor::REGISTRATION_STATE_UNKNOWN: |
ashleymills | 22:5b1feecf2aeb | 36 | LOG("regState: UNKNOWN. Failing."); |
ashleymills | 22:5b1feecf2aeb | 37 | return false; |
ashleymills | 22:5b1feecf2aeb | 38 | case LinkMonitor::REGISTRATION_STATE_REGISTERING: |
ashleymills | 22:5b1feecf2aeb | 39 | LOG("regState: REGISTERING"); |
ashleymills | 22:5b1feecf2aeb | 40 | break; |
ashleymills | 22:5b1feecf2aeb | 41 | case LinkMonitor::REGISTRATION_STATE_DENIED: |
ashleymills | 22:5b1feecf2aeb | 42 | LOG("regState: DENIED"); |
ashleymills | 22:5b1feecf2aeb | 43 | break; |
ashleymills | 22:5b1feecf2aeb | 44 | case LinkMonitor::REGISTRATION_STATE_NO_SIGNAL: |
ashleymills | 22:5b1feecf2aeb | 45 | LOG("regState: NO SIGNAL"); |
ashleymills | 22:5b1feecf2aeb | 46 | break; |
ashleymills | 22:5b1feecf2aeb | 47 | case LinkMonitor::REGISTRATION_STATE_HOME_NETWORK: |
ashleymills | 22:5b1feecf2aeb | 48 | LOG("regState: HOME NETWORK"); |
ashleymills | 22:5b1feecf2aeb | 49 | break; |
ashleymills | 22:5b1feecf2aeb | 50 | case LinkMonitor::REGISTRATION_STATE_ROAMING: |
ashleymills | 22:5b1feecf2aeb | 51 | LOG("regState: ROAMING"); |
ashleymills | 22:5b1feecf2aeb | 52 | break; |
ashleymills | 22:5b1feecf2aeb | 53 | default: |
ashleymills | 22:5b1feecf2aeb | 54 | LOG("regState: ERROR. Failing."); |
ashleymills | 22:5b1feecf2aeb | 55 | return false; |
ashleymills | 22:5b1feecf2aeb | 56 | } |
ashleymills | 22:5b1feecf2aeb | 57 | |
ashleymills | 22:5b1feecf2aeb | 58 | switch(bearer) { |
ashleymills | 22:5b1feecf2aeb | 59 | case LinkMonitor::BEARER_UNKNOWN: |
ashleymills | 22:5b1feecf2aeb | 60 | LOG("bearer: UNKNOWN. Failing."); |
ashleymills | 22:5b1feecf2aeb | 61 | return false; |
ashleymills | 22:5b1feecf2aeb | 62 | case LinkMonitor::BEARER_GSM: |
ashleymills | 22:5b1feecf2aeb | 63 | LOG("bearer: GSM"); |
ashleymills | 22:5b1feecf2aeb | 64 | break; |
ashleymills | 22:5b1feecf2aeb | 65 | case LinkMonitor::BEARER_EDGE: |
ashleymills | 22:5b1feecf2aeb | 66 | LOG("bearer: EDGE"); |
ashleymills | 22:5b1feecf2aeb | 67 | break; |
ashleymills | 22:5b1feecf2aeb | 68 | case LinkMonitor::BEARER_UMTS: |
ashleymills | 22:5b1feecf2aeb | 69 | LOG("bearer: UMTS"); |
ashleymills | 22:5b1feecf2aeb | 70 | break; |
ashleymills | 22:5b1feecf2aeb | 71 | case LinkMonitor::BEARER_HSPA: |
ashleymills | 22:5b1feecf2aeb | 72 | LOG("bearer: HSPA"); |
ashleymills | 22:5b1feecf2aeb | 73 | break; |
ashleymills | 22:5b1feecf2aeb | 74 | case LinkMonitor::BEARER_LTE: |
ashleymills | 22:5b1feecf2aeb | 75 | LOG("bearer: LTE"); |
ashleymills | 22:5b1feecf2aeb | 76 | break; |
ashleymills | 22:5b1feecf2aeb | 77 | default: |
ashleymills | 22:5b1feecf2aeb | 78 | LOG("bearer: ERROR. Failing."); |
ashleymills | 22:5b1feecf2aeb | 79 | return false; |
ashleymills | 22:5b1feecf2aeb | 80 | } |
ashleymills | 22:5b1feecf2aeb | 81 | } else { |
ashleymills | 22:5b1feecf2aeb | 82 | return false; |
ashleymills | 22:5b1feecf2aeb | 83 | } |
ashleymills | 22:5b1feecf2aeb | 84 | } |
ashleymills | 22:5b1feecf2aeb | 85 | |
ashleymills | 22:5b1feecf2aeb | 86 | return true; |
ashleymills | 22:5b1feecf2aeb | 87 | } |
ashleymills | 22:5b1feecf2aeb | 88 | |
ashleymills | 22:5b1feecf2aeb | 89 | virtual void endTest() { |
ashleymills | 23:408199b5d2cb | 90 | |
ashleymills | 22:5b1feecf2aeb | 91 | } |
ashleymills | 22:5b1feecf2aeb | 92 | |
ashleymills | 22:5b1feecf2aeb | 93 | private: |
ashleymills | 23:408199b5d2cb | 94 | |
ashleymills | 22:5b1feecf2aeb | 95 | }; |
ashleymills | 22:5b1feecf2aeb | 96 |