Vodafone Test Suite
Dependencies: mbed-rtos mbed HTTPClient VodafoneUSBModem
Tests/Test26.h@44:6d0ac4747f5b, 2012-09-17 (annotated)
- Committer:
- ashleymills
- Date:
- Mon Sep 17 13:28:39 2012 +0000
- Revision:
- 44:6d0ac4747f5b
- Parent:
- 37:847f5f86e9ff
- Child:
- 60:7efce4a3c26f
Refactored names. Privatised virtuals to avoid bugs (bitten).
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 | 37:847f5f86e9ff | 4 | extern const char* gTest26Description; |
ashleymills | 25:55b865c41f21 | 5 | |
ashleymills | 22:5b1feecf2aeb | 6 | class Test26 : public VodafoneTestCase { |
ashleymills | 22:5b1feecf2aeb | 7 | public: |
ashleymills | 33:16126e029d58 | 8 | Test26(VodafoneUSBModem *m) : VodafoneTestCase(m) { |
ashleymills | 33:16126e029d58 | 9 | _description = gTest26Description; |
ashleymills | 33:16126e029d58 | 10 | _testCaseNumber = 26; |
ashleymills | 22:5b1feecf2aeb | 11 | } |
ashleymills | 44:6d0ac4747f5b | 12 | |
ashleymills | 44:6d0ac4747f5b | 13 | private: |
ashleymills | 22:5b1feecf2aeb | 14 | |
ashleymills | 22:5b1feecf2aeb | 15 | virtual void setupTest() { |
ashleymills | 23:408199b5d2cb | 16 | |
ashleymills | 22:5b1feecf2aeb | 17 | } |
ashleymills | 22:5b1feecf2aeb | 18 | |
ashleymills | 44:6d0ac4747f5b | 19 | virtual bool executeTest() { |
ashleymills | 25:55b865c41f21 | 20 | LOG(gTest26Description); |
ashleymills | 22:5b1feecf2aeb | 21 | for(int count=0; count<30; count++) { |
ashleymills | 22:5b1feecf2aeb | 22 | LOG("Iteration %d of 30",count); |
ashleymills | 22:5b1feecf2aeb | 23 | int rssi = -1000; |
ashleymills | 22:5b1feecf2aeb | 24 | LinkMonitor::REGISTRATION_STATE regState = LinkMonitor::REGISTRATION_STATE_UNKNOWN; |
ashleymills | 22:5b1feecf2aeb | 25 | LinkMonitor::BEARER bearer = LinkMonitor::BEARER_UNKNOWN; |
ashleymills | 22:5b1feecf2aeb | 26 | |
ashleymills | 22:5b1feecf2aeb | 27 | if(_modem->getLinkState(&rssi, ®State, &bearer)==0) { |
ashleymills | 22:5b1feecf2aeb | 28 | if(rssi==-1000) { |
ashleymills | 22:5b1feecf2aeb | 29 | LOG("RSSI: Error."); |
ashleymills | 22:5b1feecf2aeb | 30 | return false; |
ashleymills | 22:5b1feecf2aeb | 31 | } else { |
ashleymills | 22:5b1feecf2aeb | 32 | LOG("RSSI: %d",rssi); |
ashleymills | 22:5b1feecf2aeb | 33 | } |
ashleymills | 22:5b1feecf2aeb | 34 | |
ashleymills | 22:5b1feecf2aeb | 35 | switch(regState) { |
ashleymills | 22:5b1feecf2aeb | 36 | case LinkMonitor::REGISTRATION_STATE_UNKNOWN: |
ashleymills | 22:5b1feecf2aeb | 37 | LOG("regState: UNKNOWN. Failing."); |
ashleymills | 22:5b1feecf2aeb | 38 | return false; |
ashleymills | 22:5b1feecf2aeb | 39 | case LinkMonitor::REGISTRATION_STATE_REGISTERING: |
ashleymills | 22:5b1feecf2aeb | 40 | LOG("regState: REGISTERING"); |
ashleymills | 22:5b1feecf2aeb | 41 | break; |
ashleymills | 22:5b1feecf2aeb | 42 | case LinkMonitor::REGISTRATION_STATE_DENIED: |
ashleymills | 22:5b1feecf2aeb | 43 | LOG("regState: DENIED"); |
ashleymills | 22:5b1feecf2aeb | 44 | break; |
ashleymills | 22:5b1feecf2aeb | 45 | case LinkMonitor::REGISTRATION_STATE_NO_SIGNAL: |
ashleymills | 22:5b1feecf2aeb | 46 | LOG("regState: NO SIGNAL"); |
ashleymills | 22:5b1feecf2aeb | 47 | break; |
ashleymills | 22:5b1feecf2aeb | 48 | case LinkMonitor::REGISTRATION_STATE_HOME_NETWORK: |
ashleymills | 22:5b1feecf2aeb | 49 | LOG("regState: HOME NETWORK"); |
ashleymills | 22:5b1feecf2aeb | 50 | break; |
ashleymills | 22:5b1feecf2aeb | 51 | case LinkMonitor::REGISTRATION_STATE_ROAMING: |
ashleymills | 22:5b1feecf2aeb | 52 | LOG("regState: ROAMING"); |
ashleymills | 22:5b1feecf2aeb | 53 | break; |
ashleymills | 22:5b1feecf2aeb | 54 | default: |
ashleymills | 22:5b1feecf2aeb | 55 | LOG("regState: ERROR. Failing."); |
ashleymills | 22:5b1feecf2aeb | 56 | return false; |
ashleymills | 22:5b1feecf2aeb | 57 | } |
ashleymills | 22:5b1feecf2aeb | 58 | |
ashleymills | 22:5b1feecf2aeb | 59 | switch(bearer) { |
ashleymills | 22:5b1feecf2aeb | 60 | case LinkMonitor::BEARER_UNKNOWN: |
ashleymills | 22:5b1feecf2aeb | 61 | LOG("bearer: UNKNOWN. Failing."); |
ashleymills | 22:5b1feecf2aeb | 62 | return false; |
ashleymills | 22:5b1feecf2aeb | 63 | case LinkMonitor::BEARER_GSM: |
ashleymills | 22:5b1feecf2aeb | 64 | LOG("bearer: GSM"); |
ashleymills | 22:5b1feecf2aeb | 65 | break; |
ashleymills | 22:5b1feecf2aeb | 66 | case LinkMonitor::BEARER_EDGE: |
ashleymills | 22:5b1feecf2aeb | 67 | LOG("bearer: EDGE"); |
ashleymills | 22:5b1feecf2aeb | 68 | break; |
ashleymills | 22:5b1feecf2aeb | 69 | case LinkMonitor::BEARER_UMTS: |
ashleymills | 22:5b1feecf2aeb | 70 | LOG("bearer: UMTS"); |
ashleymills | 22:5b1feecf2aeb | 71 | break; |
ashleymills | 22:5b1feecf2aeb | 72 | case LinkMonitor::BEARER_HSPA: |
ashleymills | 22:5b1feecf2aeb | 73 | LOG("bearer: HSPA"); |
ashleymills | 22:5b1feecf2aeb | 74 | break; |
ashleymills | 22:5b1feecf2aeb | 75 | case LinkMonitor::BEARER_LTE: |
ashleymills | 22:5b1feecf2aeb | 76 | LOG("bearer: LTE"); |
ashleymills | 22:5b1feecf2aeb | 77 | break; |
ashleymills | 22:5b1feecf2aeb | 78 | default: |
ashleymills | 22:5b1feecf2aeb | 79 | LOG("bearer: ERROR. Failing."); |
ashleymills | 22:5b1feecf2aeb | 80 | return false; |
ashleymills | 22:5b1feecf2aeb | 81 | } |
ashleymills | 22:5b1feecf2aeb | 82 | } else { |
ashleymills | 22:5b1feecf2aeb | 83 | return false; |
ashleymills | 22:5b1feecf2aeb | 84 | } |
ashleymills | 22:5b1feecf2aeb | 85 | } |
ashleymills | 22:5b1feecf2aeb | 86 | |
ashleymills | 22:5b1feecf2aeb | 87 | return true; |
ashleymills | 22:5b1feecf2aeb | 88 | } |
ashleymills | 22:5b1feecf2aeb | 89 | |
ashleymills | 22:5b1feecf2aeb | 90 | virtual void endTest() { |
ashleymills | 23:408199b5d2cb | 91 | |
ashleymills | 22:5b1feecf2aeb | 92 | } |
ashleymills | 22:5b1feecf2aeb | 93 | |
ashleymills | 22:5b1feecf2aeb | 94 | }; |
ashleymills | 22:5b1feecf2aeb | 95 |