X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.c;h=653a3ddc905511e932814ab823eb6b388c14a5b9;hb=7440e41da7475141f68195d678abcabd8fc3db23;hp=2ea99ff2c05d2faf01e5892ca2adeeb7c61f8836;hpb=03a38ffb6dbde1be82141c71e22900e18d7b56fa;p=awesomized%2Flibmemcached diff --git a/tests/test.c b/tests/test.c index 2ea99ff2..653a3ddc 100644 --- a/tests/test.c +++ b/tests/test.c @@ -10,11 +10,12 @@ #include #include #include +#include #include "test.h" #define TEST_PORT_BASE MEMCACHED_DEFAULT_PORT+10 -#define TEST_SERVERS 1 +#define TEST_SERVERS 5 long int timedif(struct timeval a, struct timeval b) { @@ -54,14 +55,17 @@ void server_shutdown(char *server_string) { unsigned int x; - for (x= 0; x < TEST_SERVERS; x++) - { - char buffer[1024]; /* Nothing special for number */ - sprintf(buffer, "cat /tmp/%umemc.pid | xargs kill", x); - system(buffer); - } if (server_string) + { + for (x= 0; x < TEST_SERVERS; x++) + { + char buffer[1024]; /* Nothing special for number */ + sprintf(buffer, "cat /tmp/%umemc.pid | xargs kill", x); + system(buffer); + } + free(server_string); + } } int main(int argc, char *argv[]) @@ -72,6 +76,7 @@ int main(int argc, char *argv[]) char *wildcard= NULL; memcached_server_st *servers; collection_st *collection; + collection_st *next; uint8_t failed; collection= gets_collections(); @@ -103,48 +108,49 @@ int main(int argc, char *argv[]) for (x= 0; x < memcached_server_list_count(servers); x++) { printf("\t%s : %u\n", servers[x].hostname, servers[x].port); - assert(servers[x].stack_responses == 0); assert(servers[x].fd == -1); assert(servers[x].cursor_active == 0); } printf("\n"); - collection_st *next; for (next= collection; next->name; next++) { test_st *run; run= next->tests; - if (collection_to_run && strcmp(collection_to_run, next->name)) + if (collection_to_run && fnmatch(collection_to_run, next->name, 0)) continue; fprintf(stderr, "\n%s\n\n", next->name); for (x= 0; run->name; run++) { - if (wildcard && strcmp(wildcard, run->name)) - continue; - - fprintf(stderr, "Testing %s", run->name); - + unsigned int loop; memcached_st *memc; memcached_return rc; struct timeval start_time, end_time; + long int load_time; + + if (wildcard && fnmatch(wildcard, run->name, 0)) + continue; + + fprintf(stderr, "Testing %s", run->name); memc= memcached_create(NULL); assert(memc); - if (run->requires_flush) - memcached_flush(memc, 0); - rc= memcached_server_push(memc, servers); assert(rc == MEMCACHED_SUCCESS); - unsigned int loop; + if (run->requires_flush) + { + memcached_flush(memc, 0); + memcached_quit(memc); + } + for (loop= 0; loop < memcached_server_list_count(servers); loop++) { - assert(memc->hosts[loop].stack_responses == 0); assert(memc->hosts[loop].fd == -1); assert(memc->hosts[loop].cursor_active == 0); } @@ -164,7 +170,7 @@ int main(int argc, char *argv[]) gettimeofday(&start_time, NULL); failed= run->function(memc); gettimeofday(&end_time, NULL); - long int load_time= timedif(end_time, start_time); + load_time= timedif(end_time, start_time); if (failed) fprintf(stderr, "\t\t\t\t\t %ld.%03ld [ failed ]\n", load_time / 1000, load_time % 1000);