X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.c;h=37ed800bce55415cefe62927c74daad19c80c88a;hb=26a094f56978a505d16aef3552d5620b6cfc2528;hp=abd4c8ae70c495db872f8d043b7d77ef1659cd1e;hpb=ccd00450d57624afba24bfbb6e76d1d69d0ad0f8;p=m6w6%2Flibmemcached diff --git a/tests/test.c b/tests/test.c index abd4c8ae..37ed800b 100644 --- a/tests/test.c +++ b/tests/test.c @@ -11,34 +11,34 @@ void init_test(void) { memcached_st memc; - (void)memcached_init(&memc); - memcached_deinit(&memc); + (void)memcached_create(&memc); + memcached_free(&memc); } void allocation_test(void) { memcached_st *memc; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - memcached_deinit(memc); + memcached_free(memc); } void connection_test(void) { memcached_return rc; memcached_st *memc; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); assert(memc); - memcached_deinit(memc); + memcached_free(memc); } void error_test(void) { memcached_st *memc; - memc= memcached_init(NULL); + memc= memcached_create(NULL); memcached_return rc; for (rc= MEMCACHED_SUCCESS; rc < MEMCACHED_MAXIMUM_RETURN; rc++) @@ -47,7 +47,7 @@ void error_test(void) } assert(memc); - memcached_deinit(memc); + memcached_free(memc); } void set_test(void) @@ -57,16 +57,16 @@ void set_test(void) char *key= "foo"; char *value= "when we sanitize"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + 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); assert(rc == MEMCACHED_SUCCESS); - memcached_deinit(memc); + memcached_free(memc); } void add_test(void) @@ -76,16 +76,16 @@ void add_test(void) char *key= "foo"; char *value= "when we sanitize"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + 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); assert(rc == MEMCACHED_NOTSTORED); - memcached_deinit(memc); + memcached_free(memc); } void replace_test(void) @@ -95,16 +95,16 @@ void replace_test(void) char *key= "foo"; char *value= "when we sanitize"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + 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); assert(rc == MEMCACHED_SUCCESS); - memcached_deinit(memc); + memcached_free(memc); } void delete_test(void) @@ -114,9 +114,9 @@ void delete_test(void) char *key= "foo"; char *value= "when we sanitize"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), value, strlen(value), @@ -126,7 +126,7 @@ void delete_test(void) rc= memcached_delete(memc, key, strlen(key), (time_t)0); assert(rc == MEMCACHED_SUCCESS); - memcached_deinit(memc); + memcached_free(memc); } void flush_test(void) @@ -134,14 +134,14 @@ void flush_test(void) memcached_st *memc; memcached_return rc; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_flush(memc, 0); assert(rc == MEMCACHED_SUCCESS); - memcached_deinit(memc); + memcached_free(memc); } void get_test(void) @@ -153,9 +153,9 @@ void get_test(void) size_t string_length; uint16_t flags; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); string= memcached_get(memc, key, strlen(key), @@ -165,7 +165,7 @@ void get_test(void) assert(string_length == 0); assert(!string); - memcached_deinit(memc); + memcached_free(memc); } void get_test2(void) @@ -178,9 +178,9 @@ void get_test2(void) size_t string_length; uint16_t flags; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), @@ -198,7 +198,7 @@ void get_test2(void) free(string); - memcached_deinit(memc); + memcached_free(memc); } void get_test3(void) @@ -219,9 +219,9 @@ void get_test3(void) for (x= 0; x < value_length; x++) value[x] = (char) (x % 127); - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), @@ -240,7 +240,52 @@ void get_test3(void) free(string); free(value); - memcached_deinit(memc); + memcached_free(memc); +} + +void get_test4(void) +{ + memcached_st *memc; + memcached_return rc; + char *key= "foo"; + char *value; + size_t value_length= 8191; + char *string; + size_t string_length; + uint16_t flags; + int x; + + value = (char*)malloc(value_length); + assert(value); + + for (x= 0; x < value_length; x++) + value[x] = (char) (x % 127); + + memc= memcached_create(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); + assert(rc == MEMCACHED_SUCCESS); + + for (x= 0; x < 10; x++) + { + string= memcached_get(memc, key, strlen(key), + &string_length, &flags, &rc); + + assert(rc == MEMCACHED_SUCCESS); + assert(string); + assert(string_length == value_length); + assert(!memcmp(string, value, string_length)); + free(string); + } + + free(value); + + memcached_free(memc); } void stats_servername_test(void) @@ -248,7 +293,7 @@ void stats_servername_test(void) memcached_return rc; memcached_stat_st stat; rc= memcached_stat_servername(&stat, NULL, - "zim.tangent.org", + "localhost", MEMCACHED_DEFAULT_PORT); } @@ -260,9 +305,9 @@ void increment_test(void) char *key= "number"; char *value= "0"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), @@ -280,7 +325,7 @@ void increment_test(void) assert(rc == MEMCACHED_SUCCESS); assert(new_number == 2); - memcached_deinit(memc); + memcached_free(memc); } void decrement_test(void) @@ -291,9 +336,9 @@ void decrement_test(void) char *key= "number"; char *value= "3"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), @@ -311,7 +356,7 @@ void decrement_test(void) assert(rc == MEMCACHED_SUCCESS); assert(new_number == 1); - memcached_deinit(memc); + memcached_free(memc); } void quit_test(void) @@ -321,9 +366,9 @@ void quit_test(void) char *key= "fudge"; char *value= "sanford and sun"; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); rc= memcached_set(memc, key, strlen(key), @@ -337,7 +382,7 @@ void quit_test(void) (time_t)50, (uint16_t)9); assert(rc == MEMCACHED_SUCCESS); - memcached_deinit(memc); + memcached_free(memc); } void mget_test(void) @@ -354,9 +399,9 @@ void mget_test(void) char *return_value; size_t return_value_length; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); /* We need to empty the server before continueing test */ @@ -387,8 +432,8 @@ void mget_test(void) assert(rc == MEMCACHED_SUCCESS); x= 0; - 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))) { assert(return_value); assert(rc == MEMCACHED_SUCCESS); @@ -398,7 +443,7 @@ void mget_test(void) x++; } - memcached_deinit(memc); + memcached_free(memc); } void get_stats_keys(void) @@ -409,7 +454,7 @@ void get_stats_keys(void) memcached_stat_st stat; memcached_return rc; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); list= memcached_stat_get_keys(memc, &stat, &rc); @@ -418,7 +463,7 @@ void get_stats_keys(void) printf("Found key %s\n", *ptr); free(list); - memcached_deinit(memc); + memcached_free(memc); } void get_stats(void) @@ -430,9 +475,9 @@ void get_stats(void) memcached_st *memc; memcached_stat_st *stat; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); stat= memcached_stat(memc, NULL, &rc); @@ -452,7 +497,7 @@ void get_stats(void) } free(stat); - memcached_deinit(memc); + memcached_free(memc); } void get_stats_multiple(void) @@ -464,11 +509,11 @@ void get_stats_multiple(void) memcached_st *memc; memcached_stat_st *stat; - memc= memcached_init(NULL); + memc= memcached_create(NULL); assert(memc); - rc= memcached_server_add(memc, "zim.tangent.org", 0); + rc= memcached_server_add(memc, "localhost", 0); assert(rc == MEMCACHED_SUCCESS); - rc= memcached_server_add(memc, "zim.tangent.org", 5555); + rc= memcached_server_add(memc, "localhost", 5555); assert(rc == MEMCACHED_SUCCESS); stat= memcached_stat(memc, NULL, &rc); @@ -488,11 +533,83 @@ void get_stats_multiple(void) } free(stat); - memcached_deinit(memc); + memcached_free(memc); +} + +void add_host_test(void) +{ + unsigned int x; + memcached_st *memc; + memcached_server_st *servers; + memcached_return rc; + char servername[]= "0.example.com"; + + memc= memcached_create(NULL); + assert(memc); + rc= memcached_server_add(memc, "localhost", 0); + assert(rc == MEMCACHED_SUCCESS); + + servers= memcached_server_list_append(NULL, servername, 400, &rc); + assert(servers); + assert(1 == memcached_server_list_count(servers)); + + for (x= 2; x < 20; x++) + { + char buffer[SMALL_STRING_LEN]; + + snprintf(buffer, SMALL_STRING_LEN, "%u.example.com", 400+x); + servers= memcached_server_list_append(servers, buffer, 401, + &rc); + assert(rc == MEMCACHED_SUCCESS); + assert(x == memcached_server_list_count(servers)); + } + + rc= memcached_server_push(memc, servers); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_server_push(memc, servers); + assert(rc == MEMCACHED_SUCCESS); + + memcached_server_list_free(servers); + memcached_free(memc); +} + +void add_host_test1(void) +{ + unsigned int x; + memcached_st *memc; + memcached_server_st *servers; + memcached_return rc; + char servername[]= "0.example.com"; + + memc= memcached_create(NULL); + assert(memc); + + servers= memcached_server_list_append(NULL, servername, 400, &rc); + assert(servers); + assert(1 == memcached_server_list_count(servers)); + + for (x= 2; x < 20; x++) + { + char buffer[SMALL_STRING_LEN]; + + snprintf(buffer, SMALL_STRING_LEN, "%u.example.com", 400+x); + servers= memcached_server_list_append(servers, buffer, 401, + &rc); + assert(rc == MEMCACHED_SUCCESS); + assert(x == memcached_server_list_count(servers)); + } + + rc= memcached_server_push(memc, servers); + assert(rc == MEMCACHED_SUCCESS); + rc= memcached_server_push(memc, servers); + assert(rc == MEMCACHED_SUCCESS); + + memcached_server_list_free(servers); + memcached_free(memc); } -int main(int argc, char argvp[]) +int main(int argc, char *argv[]) { /* Clean the server before beginning testing */ flush_test(); @@ -509,6 +626,7 @@ int main(int argc, char argvp[]) get_test(); get_test2(); get_test3(); + get_test4(); stats_servername_test(); increment_test(); @@ -516,6 +634,7 @@ int main(int argc, char argvp[]) quit_test(); mget_test(); get_stats(); + add_host_test(); /* The multiple tests */ if (argc == 2)