X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Ftest.c;h=7a5e3132a238c5a5d693574e86a1d6b039d2fe44;hb=b4de8d3fd063b9017797dd9809ab3acb8a537606;hp=d0d5329245a6ed398308a267b6c8c67127cb596a;hpb=b1f4764b7718276d8ef176d5b3238718a782e839;p=m6w6%2Flibmemcached diff --git a/tests/test.c b/tests/test.c index d0d53292..7a5e3132 100644 --- a/tests/test.c +++ b/tests/test.c @@ -37,13 +37,19 @@ static const char *test_strerror(test_return_t code) case TEST_SKIPPED: return "skipped"; case TEST_MAXIMUM_RETURN: - default: + default: fprintf(stderr, "Unknown return value\n"); - assert(0); + abort(); } } +void create_core(void) +{ + if (getenv("LIBMEMCACHED_NO_COREDUMP") == NULL && fork() == 0) + abort(); +} + int main(int argc, char *argv[]) { test_return_t failed; @@ -63,7 +69,7 @@ int main(int argc, char *argv[]) if (world.create) world_ptr= world.create(); - else + else world_ptr= NULL; startup_ptr= (server_startup_st *)world_ptr; @@ -89,7 +95,7 @@ int main(int argc, char *argv[]) { unsigned int loop; memcached_st *memc; - memcached_return rc; + memcached_return_t rc; struct timeval start_time, end_time; long int load_time; @@ -99,10 +105,10 @@ int main(int argc, char *argv[]) fprintf(stderr, "Testing %s", run->name); memc= memcached_create(NULL); - assert(memc); + test_truth(memc); rc= memcached_server_push(memc, servers); - assert(rc == MEMCACHED_SUCCESS); + test_truth(rc == MEMCACHED_SUCCESS); if (run->requires_flush) { @@ -112,8 +118,8 @@ int main(int argc, char *argv[]) for (loop= 0; loop < memcached_server_list_count(servers); loop++) { - assert(memc->hosts[loop].fd == -1); - assert(memc->hosts[loop].cursor_active == 0); + test_truth(memc->hosts[loop].fd == -1); + test_truth(memc->hosts[loop].cursor_active == 0); } if (next->pre) @@ -132,13 +138,13 @@ int main(int argc, char *argv[]) gettimeofday(&end_time, NULL); load_time= timedif(end_time, start_time); - fprintf(stderr, "\t\t\t\t\t %ld.%03ld [ %s ]\n", load_time / 1000, + fprintf(stderr, "\t\t\t\t\t %ld.%03ld [ %s ]\n", load_time / 1000, load_time % 1000, test_strerror(failed)); if (next->post) (void)next->post(memc); - assert(memc); + test_truth(memc); error: memcached_free(memc); }