X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.h;h=d0e089ddfcfa42f5b3d62762162ac64e360aa91f;hb=12a14e855f71e817bd85a6cc65a8e7c124b3c2ff;hp=4e695d26ca468ca637f596155b0de1571ef0613b;hpb=c119fcae0b2be6b079fa20a661146b108755399c;p=awesomized%2Flibmemcached diff --git a/tests/test.h b/tests/test.h index 4e695d26..d0e089dd 100644 --- a/tests/test.h +++ b/tests/test.h @@ -1,24 +1,46 @@ /* Structures for generic tests. */ -#include -#include "../lib/common.h" +#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; - uint8_t (*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