Vodafone Test Suite

Dependencies:   mbed-rtos mbed HTTPClient VodafoneUSBModem

main.cpp

Committer:
ashleymills
Date:
2012-09-04
Revision:
20:18373fb68ad7
Parent:
19:26fbed33d4e7
Child:
22:5b1feecf2aeb

File content as of revision 20:18373fb68ad7:

#define __DEBUG__ 4 //Maximum verbosity
#ifndef __MODULE__
#define __MODULE__ "net_3g_basic_http_test.cpp"
#endif

#include "LogHeader.h"

#include "mbed.h"
#include "socket/bsd_socket.h"
#include "rtos.h"
#include "VodafoneUSBModem.h"
#include "VodafoneTestCase.h"
#include "TestManager.h"
#include "Tests.h"

DigitalOut led1(LED1);
DigitalOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);

extern "C" void HardFault_Handler() { error("Hard Fault!\n"); }

void test(void const*) {
  VodafoneUSBModem modem;
  LOG("Constructing TestManager");
  TestManager *m = new TestManager(&modem);
  LOG("Running all automated tests");
  
  int numPassed = m->executeTestList(gAutomatedTests,gNumAutomatedTests);
  LOG("%d tests complete: %d passes and %d failures.",
     gNumAutomatedTests,numPassed,gNumAutomatedTests-numPassed);
  
  while(1) {
     Thread::wait(1000);
  }
}

time_t startTime = 0;

void setTime() {
  struct tm t;
  t.tm_year  = 2012;
  t.tm_mon   = 8;
  t.tm_mday  = 23;
  t.tm_hour  = 9;
  t.tm_min   = 19;
  t.tm_sec   = 0;
  t.tm_year -= 1900;
  t.tm_mon  -= 1;
  set_time(mktime(&t));
}

int main() {

  DBG_INIT();
  DBG_SET_SPEED(115200);
  DBG_SET_NEWLINE("\r\n");

  //setTime();
  size_t currentTime = time(NULL);
  fprintf(stdout,"Invocation time: %s\r\n",ctime(&currentTime));
  

  Thread testTask(test, NULL, osPriorityNormal, 1024 * 6);
  // this thread just waits and blinks leds periodically
  while(1) {
     led1 = !led1;
     Thread::wait(500);
     led1 = !led1;
     Thread::wait(30000);
  }
}