X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.h;h=77aa5303bbe2bd580e7c1c1d8670463c8e565d00;hb=7f192e3ce089fb207186dd4079cc377c90631976;hp=fc10c8d5492a94bfd28f164e9d28bac39df3fc8c;hpb=46b28da059e5f3a0f7260a5df2c1cf98602b017b;p=awesomized%2Flibmemcached diff --git a/tests/test.h b/tests/test.h index fc10c8d5..77aa5303 100644 --- a/tests/test.h +++ b/tests/test.h @@ -16,9 +16,12 @@ extern "C" { #include #include -#include #include +#if !defined(__cplusplus) +# include +#endif + typedef struct world_st world_st; typedef struct collection_st collection_st; typedef struct test_st test_st; @@ -36,6 +39,8 @@ typedef test_return_t (*test_callback_fn)(void *); typedef test_return_t (*test_callback_runner_fn)(test_callback_fn, void *); typedef test_return_t (*test_callback_error_fn)(test_return_t, void *); +/* Help function for use with gettimeofday() */ +long int timedif(struct timeval a, struct timeval b); /** A structure describing the test case. @@ -144,7 +149,17 @@ void create_core(void); */ const char *test_strerror(test_return_t code); -#define test_truth(A) \ +#define test_fail(A) \ +do \ +{ \ + if (1) { \ + fprintf(stderr, "\nFailed in %s:%d: %s\n", __FILE__, __LINE__, #A);\ + create_core(); \ + return TEST_FAILURE; \ + } \ +} while (0) + +#define test_true(A) \ do \ { \ if (! (A)) { \