Use greentea_serial SingletonPtr.

pull/2559/head
Vincent Coubard 2016-08-31 16:24:12 +01:00
parent a9d9987d7c
commit cb4a7fa85e
1 changed files with 17 additions and 25 deletions

View File

@ -20,6 +20,7 @@
#include <string.h> #include <string.h>
#include "mbed.h" #include "mbed.h"
#include "greentea-client/test_env.h" #include "greentea-client/test_env.h"
#include "greentea-client/greentea_serial.h"
/** /**
@ -57,15 +58,6 @@ static void greentea_notify_hosttest(const char *);
static void greentea_notify_completion(const int); static void greentea_notify_completion(const int);
static void greentea_notify_version(); static void greentea_notify_version();
/**
* Rawserial object used to provide direct, raw serial communications
* between the target and the host.
*/
RawSerial& greentea_serial() {
static RawSerial serial(USBTX, USBRX);
return serial;
}
/** \brief Handshake with host and send setup data (timeout and host test name) /** \brief Handshake with host and send setup data (timeout and host test name)
* \details This function will send preamble to master. * \details This function will send preamble to master.
* After host test name is received master will invoke host test script * After host test name is received master will invoke host test script
@ -195,8 +187,8 @@ void greentea_notify_coverage_end() {
*/ */
inline void greentea_write_preamble() inline void greentea_write_preamble()
{ {
greentea_serial().putc('{'); greentea_serial->putc('{');
greentea_serial().putc('{'); greentea_serial->putc('{');
} }
/** /**
@ -213,9 +205,9 @@ inline void greentea_write_preamble()
*/ */
inline void greentea_write_postamble() inline void greentea_write_postamble()
{ {
greentea_serial().putc('}'); greentea_serial->putc('}');
greentea_serial().putc('}'); greentea_serial->putc('}');
greentea_serial().putc('\n'); greentea_serial->putc('\n');
} }
/** /**
@ -231,7 +223,7 @@ inline void greentea_write_postamble()
inline void greentea_write_string(const char *str) inline void greentea_write_string(const char *str)
{ {
while (*str != '\0') { while (*str != '\0') {
greentea_serial().putc(*str); greentea_serial->putc(*str);
str ++; str ++;
} }
} }
@ -257,7 +249,7 @@ inline void greentea_write_int(const int val)
unsigned int i = 0; unsigned int i = 0;
sprintf(intval, "%d", val); sprintf(intval, "%d", val);
while (intval[i] != '\0') { while (intval[i] != '\0') {
greentea_serial().putc(intval[i]); greentea_serial->putc(intval[i]);
i++; i++;
} }
} }
@ -277,7 +269,7 @@ void greentea_send_kv(const char *key, const char *val) {
if (key && val) { if (key && val) {
greentea_write_preamble(); greentea_write_preamble();
greentea_write_string(key); greentea_write_string(key);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_string(val); greentea_write_string(val);
greentea_write_postamble(); greentea_write_postamble();
} }
@ -300,7 +292,7 @@ void greentea_send_kv(const char *key, const int val) {
if (key) { if (key) {
greentea_write_preamble(); greentea_write_preamble();
greentea_write_string(key); greentea_write_string(key);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(val); greentea_write_int(val);
greentea_write_postamble(); greentea_write_postamble();
} }
@ -324,9 +316,9 @@ void greentea_send_kv(const char *key, const char *val, const int result) {
if (key) { if (key) {
greentea_write_preamble(); greentea_write_preamble();
greentea_write_string(key); greentea_write_string(key);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_string(val); greentea_write_string(val);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(result); greentea_write_int(result);
greentea_write_postamble(); greentea_write_postamble();
@ -357,11 +349,11 @@ void greentea_send_kv(const char *key, const char *val, const int passes, const
if (key) { if (key) {
greentea_write_preamble(); greentea_write_preamble();
greentea_write_string(key); greentea_write_string(key);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_string(val); greentea_write_string(val);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(passes); greentea_write_int(passes);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(failures); greentea_write_int(failures);
greentea_write_postamble(); greentea_write_postamble();
} }
@ -390,9 +382,9 @@ void greentea_send_kv(const char *key, const int passes, const int failures) {
if (key) { if (key) {
greentea_write_preamble(); greentea_write_preamble();
greentea_write_string(key); greentea_write_string(key);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(passes); greentea_write_int(passes);
greentea_serial().putc(';'); greentea_serial->putc(';');
greentea_write_int(failures); greentea_write_int(failures);
greentea_write_postamble(); greentea_write_postamble();
} }