Vodafone Test Suite

Dependencies:   mbed-rtos mbed HTTPClient VodafoneUSBModem

TestManager.cpp

Committer:
nherriot
Date:
2012-08-30
Revision:
16:c89d426c6175
Parent:
13:8b69853966f8
Child:
19:26fbed33d4e7

File content as of revision 16:c89d426c6175:

#include "TestManager.h"
#include "Tests.h"
TestManager::TestManager(VodafoneUSBModem *m) : _modem(m) { 
   _tests.push_back((VodafoneTestCase*)new Test20(_modem, 20));
   _tests.push_back((VodafoneTestCase*)new Test12(_modem, 12));
   _tests.push_back((VodafoneTestCase*)new Test13(_modem, 13));
   // _tests.push_back((VodafoneTestCase*)new Test50(_modem, 50));
}

int TestManager::runAll() {
   int successfullTests = 0;
   LOG("Running %d tests...",_tests.size());
   for(int i=0; i<_tests.size(); i++) {
      LOG("Running test %d...",i);
      if(_tests[i]->run()) {
         LOG("...OK");
         successfullTests++;
      } else {
         LOG("...FAIL");
      }
   }
   return successfullTests;
}

bool TestManager::runTest(int id) {
   if(id<0||id>=_tests.size()) {
      LOG("Test ID must be between 0 and %d",_tests.size());
   }
   return _tests[id]->run();
}


bool TestManager::runTest(int id, int numTimes) {
   for(int i=0; i<numTimes; i++) {
      if(!runTest(id))
         return false;
   }
   return true;
}

int TestManager::getNumTests() {
   return _tests.size();
}