Vodafone Test Suite

Dependencies:   mbed-rtos mbed HTTPClient VodafoneUSBModem

main.cpp

Committer:
nherriot
Date:
2012-09-12
Revision:
30:dd2beda340c6
Parent:
24:8f0f9551122a
Parent:
28:c630a04a7198
Child:
31:9231acdde9ff

File content as of revision 30:dd2beda340c6:

#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"

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

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

time_t startTime = 0;
time_t gPreviousUptime = 0;
time_t gUptime = 0;

void loopForever() {
   while(1) {
      Thread::wait(1000);
      time_t now = time(NULL);
      gPreviousUptime = gUptime;
   }
}

void test(void const*) {
  VodafoneUSBModem modem;
  LOG("Constructing TestManager");
  TestManager *m = new TestManager(&modem);
  LOG("Running tests.");

  
  int numPassed = m->executeTestProfile(TESTS_AUTOMATED);
  
  loopForever();
}



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 * 8);
  // this thread just waits and blinks leds periodically
  while(1) {
     led1 = !led1;
     Thread::wait(500);
     led1 = !led1;
     Thread::wait(30000);
  }
}