X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.h;h=63b75ef0fdb105e9d65770ee7063e5971ba56f14;hb=b10a03e4afb5514f1c86f5c75b9bfc7d46ce49b4;hp=88e62800438beb5a7f094bd0889dd91274694d89;hpb=898a8a7a246d9f7fa712654eb855371b9a159b7c;p=awesomized%2Flibmemcached diff --git a/tests/test.h b/tests/test.h index 88e62800..63b75ef0 100644 --- a/tests/test.h +++ b/tests/test.h @@ -1,21 +1,46 @@ /* Structures for generic tests. */ +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include "../libmemcached/common.h" + +typedef struct world_st world_st; typedef struct collection_st collection_st; typedef struct test_st test_st; +typedef enum { + TEST_SUCCESS= 0, /* Backwards compatibility */ + TEST_FAILURE, + TEST_MEMORY_ALLOCATION_FAILURE, + TEST_MAXIMUM_RETURN /* Always add new error code before */ +} test_return; + struct test_st { - char *name; + const char *name; unsigned int requires_flush; - void (*function)(memcached_st *memc); + test_return (*function)(memcached_st *memc); }; struct collection_st { - char *name; + const char *name; memcached_return (*pre)(memcached_st *memc); memcached_return (*post)(memcached_st *memc); test_st *tests; }; +struct world_st { + collection_st *collections; + void *(*create)(void); + void (*destroy)(void *collection_object); +}; + /* How we make all of this work :) */ -collection_st *gets_collections(void); +void get_world(world_st *world); + +#ifdef __cplusplus +} +#endif