Files
mgos_i2c_mock/src/mgos_mock.c
Pim van Pelt b1d92a32a8 Include first driver: SHT31
Make I2C reads blocking w/ timeout
Add SHT31 driver, roughly :)
Fix mg_time() to return a double.
2018-04-02 17:29:13 +02:00

50 lines
1017 B
C

/* Some functions mocked from MGOS, so we can run unit tests standalone.
*/
#include "mgos_mock.h"
#include <unistd.h>
int _mgos_timers = 0;
int log_print_prefix(enum cs_log_level l, const char *func, const char *file) {
char ll_str[6];
switch(l) {
case LL_ERROR:
strncpy(ll_str, "ERROR", sizeof(ll_str));
break;
case LL_WARN:
strncpy(ll_str, "WARN", sizeof(ll_str));
break;
case LL_INFO:
strncpy(ll_str, "INFO", sizeof(ll_str));
break;
case LL_DEBUG:
strncpy(ll_str, "DEBUG", sizeof(ll_str));
break;
case LL_VERBOSE_DEBUG:
strncpy(ll_str, "VERB", sizeof(ll_str));
break;
default: // LL_NONE
return 0;
}
printf ("%-5s %-20s %-40s| ", ll_str, file, func);
return 1;
}
double mg_time() {
struct timespec ts;
double ret;
clock_gettime(CLOCK_REALTIME_COARSE, &ts);
ret = (double) ts.tv_sec;
ret += ((double)ts.tv_nsec)/1000000000;
return ret;
}
void mgos_usleep(uint32_t usecs) {
usleep(usecs);
}