X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=test%2Futils.h;h=3576df594a70db81f7b3bfda871ba518f50051b8;hb=cb2c4617316df5b467c6a76bf118ee65f6e1c3a2;hp=a657dffad6df98305d17eb092a80584497eee8b8;hpb=99ab0b58b4a20473670b442981eeed417dde1582;p=meshlink diff --git a/test/utils.h b/test/utils.h index a657dffa..3576df59 100644 --- a/test/utils.h +++ b/test/utils.h @@ -1,6 +1,9 @@ #ifndef MESHLINK_TEST_UTILS_H #define MESHLINK_TEST_UTILS_H +#include +#include + #include "../src/meshlink.h" // Simple synchronisation between threads @@ -24,7 +27,13 @@ extern void start_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b); extern void stop_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b); /// Stop and cleanup a pair of meshlink instances. -extern void close_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b, const char *prefix); +extern void close_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b); + +/// Link two meshlink instances. +extern void link_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b); + +/// Default log callback +extern void log_cb(meshlink_handle_t *mesh, meshlink_log_level_t level, const char *text); #define assert_after(cond, timeout)\ do {\ @@ -36,4 +45,14 @@ extern void close_meshlink_pair(meshlink_handle_t *a, meshlink_handle_t *b, cons sleep(1);\ }\ } while(0) + #endif + +/// Compare two timespec values. +static bool timespec_lt(const struct timespec *a, const struct timespec *b) { + if(a->tv_sec == b->tv_sec) { + return a->tv_nsec < b->tv_nsec; + } else { + return a->tv_sec < b->tv_sec; + } +}