X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.c;h=dabb00f4779ac23b6d0bb7e7ac84b7de4b54a8b5;hb=bf4b5a21dde3199e1a57bf9521401262678c7f97;hp=af27e8cd53ba1d43511a35dfdb58b336752527d0;hpb=452f5b545eec58ac1bddd32ea131b79e2b1a52a9;p=m6w6%2Flibmemcached diff --git a/tests/test.c b/tests/test.c index af27e8cd..dabb00f4 100644 --- a/tests/test.c +++ b/tests/test.c @@ -28,12 +28,28 @@ void connection_test(void) memcached_return rc; memcached_st *memc; memc= memcached_init(NULL); + assert(memc); rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); assert(memc); memcached_deinit(memc); } +void error_test(void) +{ + memcached_st *memc; + memc= memcached_init(NULL); + memcached_return rc; + + for (rc= MEMCACHED_SUCCESS; rc < MEMCACHED_MAXIMUM_RETURN; rc++) + { + printf("Error %d -> %s\n", rc, memcached_strerror(memc, rc)); + } + + assert(memc); + memcached_deinit(memc); +} + void set_test(void) { memcached_st *memc; @@ -43,6 +59,8 @@ void set_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -60,6 +78,8 @@ void add_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); rc= memcached_add(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -77,6 +97,8 @@ void replace_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); rc= memcached_replace(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -94,6 +116,8 @@ void delete_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -112,6 +136,8 @@ void flush_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); rc= memcached_flush(memc, 0); assert(rc == MEMCACHED_SUCCESS); @@ -129,6 +155,8 @@ void get_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); string= memcached_get(memc, key, strlen(key), &string_length, &flags, &rc); @@ -152,6 +180,9 @@ void get_test2(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -188,6 +219,9 @@ void get_test3(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_set(memc, key, strlen(key), value, value_length, (time_t)0, (uint16_t)0); @@ -200,17 +234,18 @@ void get_test3(void) assert(!memcmp(string, value, string_length)); free(string); + free(value); memcached_deinit(memc); } -void stats_hostname_test(void) +void stats_servername_test(void) { memcached_return rc; memcached_stat_st stat; - rc= memcached_stat_hostname(&stat, NULL, - "localhost", - MEMCACHED_DEFAULT_PORT); + rc= memcached_stat_servername(&stat, NULL, + "localhost", + MEMCACHED_DEFAULT_PORT); } void increment_test(void) @@ -223,6 +258,9 @@ void increment_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -251,6 +289,9 @@ void decrement_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)0, (uint16_t)0); @@ -278,6 +319,9 @@ void quit_test(void) memc= memcached_init(NULL); assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_set(memc, key, strlen(key), value, strlen(value), (time_t)10, (uint16_t)3); @@ -308,15 +352,23 @@ void mget_test(void) memc= memcached_init(NULL); assert(memc); - + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + + /* We need to empty the server before continueing test */ + rc= memcached_flush(memc, 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_mget(memc, keys, key_length, 3); assert(rc == MEMCACHED_SUCCESS); - while (return_value= memcached_fetch(memc, return_key, &return_key_length, - &return_value_length, &flags, &rc)) + while ((return_value= memcached_fetch(memc, return_key, &return_key_length, + &return_value_length, &flags, &rc)) != NULL) { assert(return_value); } + assert(!return_value); + assert(return_value_length == 0); assert(rc == MEMCACHED_NOTFOUND); for (x= 0; x < 3; x++) @@ -338,20 +390,112 @@ void mget_test(void) assert(rc == MEMCACHED_SUCCESS); assert(key_length[x] == return_value_length); assert(!memcmp(return_value, keys[x], return_value_length)); + free(return_value); x++; } memcached_deinit(memc); } +void get_stats_keys(void) +{ + char **list; + char **ptr; + memcached_st *memc; + memcached_stat_st stat; + memcached_return rc; + + memc= memcached_init(NULL); + assert(memc); + + list= memcached_stat_get_keys(memc, &stat, &rc); + assert(rc == MEMCACHED_SUCCESS); + for (ptr= list; *ptr; ptr++) + printf("Found key %s\n", *ptr); + + free(list); + memcached_deinit(memc); +} + +void get_stats(void) +{ + unsigned int x; + char **list; + char **ptr; + memcached_return rc; + memcached_st *memc; + memcached_stat_st *stat; + + memc= memcached_init(NULL); + assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + + stat= memcached_stat(memc, NULL, &rc); + assert(rc == MEMCACHED_SUCCESS); + + assert(rc == MEMCACHED_SUCCESS); + assert(stat); + + for (x= 0; x < memcached_server_count(memc); x++) + { + list= memcached_stat_get_keys(memc, &stat[x], &rc); + assert(rc == MEMCACHED_SUCCESS); + for (ptr= list; *ptr; ptr++) + printf("Found key %s\n", *ptr); + + free(list); + } + + free(stat); + memcached_deinit(memc); +} -int main(void) +void get_stats_multiple(void) +{ + unsigned int x; + char **list; + char **ptr; + memcached_return rc; + memcached_st *memc; + memcached_stat_st *stat; + + memc= memcached_init(NULL); + assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_server_add(memc, "localhost", 5555); + assert(rc == MEMCACHED_SUCCESS); + + stat= memcached_stat(memc, NULL, &rc); + assert(rc == MEMCACHED_SUCCESS); + + assert(rc == MEMCACHED_SUCCESS); + assert(stat); + + for (x= 0; x < memcached_server_count(memc); x++) + { + list= memcached_stat_get_keys(memc, &stat[x], &rc); + assert(rc == MEMCACHED_SUCCESS); + for (ptr= list; *ptr; ptr++) + printf("Found key %s\n", *ptr); + + free(list); + } + + free(stat); + memcached_deinit(memc); +} + + +int main(int argc, char argvp[]) { /* Clean the server before beginning testing */ flush_test(); init_test(); allocation_test(); connection_test(); + error_test(); set_test(); add_test(); replace_test(); @@ -361,12 +505,20 @@ int main(void) get_test(); get_test2(); get_test3(); - stats_hostname_test(); + stats_servername_test(); increment_test(); decrement_test(); quit_test(); mget_test(); + get_stats(); + + /* The multiple tests */ + if (argc == 2) + { + get_stats_multiple(); + } + get_stats_keys(); /* Clean up whatever we might have left */ flush_test();