Vodafone Test Suite

Dependencies:   mbed-rtos mbed HTTPClient VodafoneUSBModem

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?

UserRevisionLine numberNew contents of line
ashleymills 22:5b1feecf2aeb 1 #pragma once
ashleymills 22:5b1feecf2aeb 2 #include "VodafoneTestCase.h"
ashleymills 37:847f5f86e9ff 3
ashleymills 37:847f5f86e9ff 4 extern const char* gTest25Description;
ashleymills 25:55b865c41f21 5
ashleymills 22:5b1feecf2aeb 6 class Test25 : public VodafoneTestCase {
ashleymills 22:5b1feecf2aeb 7 public:
ashleymills 33:16126e029d58 8 Test25(VodafoneUSBModem *m) : VodafoneTestCase(m) {
ashleymills 33:16126e029d58 9 _description = gTest25Description;
ashleymills 33:16126e029d58 10 _testCaseNumber = 25;
ashleymills 22:5b1feecf2aeb 11 }
ashleymills 44:6d0ac4747f5b 12 private:
ashleymills 22:5b1feecf2aeb 13
ashleymills 22:5b1feecf2aeb 14 virtual void setupTest() {
ashleymills 23:408199b5d2cb 15
ashleymills 22:5b1feecf2aeb 16 }
ashleymills 22:5b1feecf2aeb 17
ashleymills 44:6d0ac4747f5b 18 virtual bool executeTest() {
ashleymills 22:5b1feecf2aeb 19
ashleymills 25:55b865c41f21 20 LOG(gTest25Description);
ashleymills 22:5b1feecf2aeb 21 int rssi = -1000;
ashleymills 22:5b1feecf2aeb 22 LinkMonitor::REGISTRATION_STATE regState = LinkMonitor::REGISTRATION_STATE_UNKNOWN;
ashleymills 22:5b1feecf2aeb 23 LinkMonitor::BEARER bearer = LinkMonitor::BEARER_UNKNOWN;
ashleymills 22:5b1feecf2aeb 24
ashleymills 22:5b1feecf2aeb 25 if(_modem->getLinkState(&rssi, &regState, &bearer)==0) {
ashleymills 22:5b1feecf2aeb 26 if(rssi==-1000) {
ashleymills 22:5b1feecf2aeb 27 LOG("RSSI: Error.");
ashleymills 22:5b1feecf2aeb 28 return false;
ashleymills 22:5b1feecf2aeb 29 } else {
ashleymills 22:5b1feecf2aeb 30 LOG("RSSI: %d",rssi);
ashleymills 22:5b1feecf2aeb 31 }
ashleymills 22:5b1feecf2aeb 32
ashleymills 22:5b1feecf2aeb 33 switch(regState) {
ashleymills 22:5b1feecf2aeb 34 case LinkMonitor::REGISTRATION_STATE_UNKNOWN:
ashleymills 22:5b1feecf2aeb 35 LOG("regState: UNKNOWN. Failing.");
ashleymills 22:5b1feecf2aeb 36 return false;
ashleymills 22:5b1feecf2aeb 37 case LinkMonitor::REGISTRATION_STATE_REGISTERING:
ashleymills 22:5b1feecf2aeb 38 LOG("regState: REGISTERING");
ashleymills 22:5b1feecf2aeb 39 break;
ashleymills 22:5b1feecf2aeb 40 case LinkMonitor::REGISTRATION_STATE_DENIED:
ashleymills 22:5b1feecf2aeb 41 LOG("regState: DENIED");
ashleymills 22:5b1feecf2aeb 42 break;
ashleymills 22:5b1feecf2aeb 43 case LinkMonitor::REGISTRATION_STATE_NO_SIGNAL:
ashleymills 22:5b1feecf2aeb 44 LOG("regState: NO SIGNAL");
ashleymills 22:5b1feecf2aeb 45 break;
ashleymills 22:5b1feecf2aeb 46 case LinkMonitor::REGISTRATION_STATE_HOME_NETWORK:
ashleymills 22:5b1feecf2aeb 47 LOG("regState: HOME NETWORK");
ashleymills 22:5b1feecf2aeb 48 break;
ashleymills 22:5b1feecf2aeb 49 case LinkMonitor::REGISTRATION_STATE_ROAMING:
ashleymills 22:5b1feecf2aeb 50 LOG("regState: ROAMING");
ashleymills 22:5b1feecf2aeb 51 break;
ashleymills 22:5b1feecf2aeb 52 default:
ashleymills 22:5b1feecf2aeb 53 LOG("regState: ERROR. Failing.");
ashleymills 22:5b1feecf2aeb 54 return false;
ashleymills 22:5b1feecf2aeb 55 }
ashleymills 22:5b1feecf2aeb 56
ashleymills 22:5b1feecf2aeb 57 switch(bearer) {
ashleymills 22:5b1feecf2aeb 58 case LinkMonitor::BEARER_UNKNOWN:
ashleymills 22:5b1feecf2aeb 59 LOG("bearer: UNKNOWN. Failing.");
ashleymills 22:5b1feecf2aeb 60 return false;
ashleymills 22:5b1feecf2aeb 61 case LinkMonitor::BEARER_GSM:
ashleymills 22:5b1feecf2aeb 62 LOG("bearer: GSM");
ashleymills 22:5b1feecf2aeb 63 break;
ashleymills 22:5b1feecf2aeb 64 case LinkMonitor::BEARER_EDGE:
ashleymills 22:5b1feecf2aeb 65 LOG("bearer: EDGE");
ashleymills 22:5b1feecf2aeb 66 break;
ashleymills 22:5b1feecf2aeb 67 case LinkMonitor::BEARER_UMTS:
ashleymills 22:5b1feecf2aeb 68 LOG("bearer: UMTS");
ashleymills 22:5b1feecf2aeb 69 break;
ashleymills 22:5b1feecf2aeb 70 case LinkMonitor::BEARER_HSPA:
ashleymills 22:5b1feecf2aeb 71 LOG("bearer: HSPA");
ashleymills 22:5b1feecf2aeb 72 break;
ashleymills 22:5b1feecf2aeb 73 case LinkMonitor::BEARER_LTE:
ashleymills 22:5b1feecf2aeb 74 LOG("bearer: LTE");
ashleymills 22:5b1feecf2aeb 75 break;
ashleymills 22:5b1feecf2aeb 76 default:
ashleymills 22:5b1feecf2aeb 77 LOG("bearer: ERROR. Failing.");
ashleymills 22:5b1feecf2aeb 78 return false;
ashleymills 22:5b1feecf2aeb 79 }
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 return true;
ashleymills 22:5b1feecf2aeb 86 }
ashleymills 22:5b1feecf2aeb 87
ashleymills 22:5b1feecf2aeb 88 virtual void endTest() {
ashleymills 23:408199b5d2cb 89
ashleymills 22:5b1feecf2aeb 90 }
ashleymills 22:5b1feecf2aeb 91
ashleymills 22:5b1feecf2aeb 92 };