X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.h;h=d0e089ddfcfa42f5b3d62762162ac64e360aa91f;hb=e31617422d9af99123008f2b312d399d308491cc;hp=88e62800438beb5a7f094bd0889dd91274694d89;hpb=898a8a7a246d9f7fa712654eb855371b9a159b7c;p=awesomized%2Flibmemcached diff --git a/tests/test.h b/tests/test.h index 88e62800..d0e089dd 100644 --- a/tests/test.h +++ b/tests/test.h @@ -1,21 +1,46 @@ /* Structures for generic tests. */ +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +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