X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Fmemcapable.cc;h=4e7c957da441a8648b941a1a833a7c7ac35c2526;hb=95474a1687017de0adb2c6ce57c1ab7c0704c5c6;hp=7adf763561a11c134ba5b20119e5553f7049ac47;hpb=f652bb663f0499f5447d0358670464a669a199f0;p=awesomized%2Flibmemcached diff --git a/tests/memcapable.cc b/tests/memcapable.cc index 7adf7635..4e7c957d 100644 --- a/tests/memcapable.cc +++ b/tests/memcapable.cc @@ -39,51 +39,64 @@ Test that we are cycling the servers we are creating during testing. */ -#include +#include #include -#include +#include using namespace libtest; #ifndef __INTEL_COMPILER -#pragma GCC diagnostic ignored "-Wstrict-aliasing" +# pragma GCC diagnostic ignored "-Wstrict-aliasing" #endif static std::string executable; -static test_return_t help_test(void *) +static test_return_t quiet_test(void *) { char buffer[1024]; - snprintf(buffer, sizeof(buffer), "-p %d", int(default_port())); - const char *args[]= { buffer, "--help", 0 }; + snprintf(buffer, sizeof(buffer), "%d", int(get_free_port())); + const char *args[]= { "-p", buffer, "-q", 0 }; + + test_compare(EXIT_FAILURE, exec_cmdline(executable, args, true)); + + return TEST_SUCCESS; +} + +static test_return_t help_test(void *) +{ + const char *args[]= { "-h", 0 }; + + test_compare(EXIT_SUCCESS, exec_cmdline(executable, args, true)); - test_true(exec_cmdline(executable, args)); return TEST_SUCCESS; } static test_return_t ascii_test(void *) { char buffer[1024]; - snprintf(buffer, sizeof(buffer), "-p %d", int(default_port())); - const char *args[]= { buffer, " -a ", 0 }; + snprintf(buffer, sizeof(buffer), "%d", int(default_port())); + const char *args[]= { "-p", buffer, "-a", 0 }; + + test_true(exec_cmdline(executable, args, true) <= EXIT_FAILURE); - test_true(exec_cmdline(executable, args)); return TEST_SUCCESS; } static test_return_t binary_test(void *) { char buffer[1024]; - snprintf(buffer, sizeof(buffer), "-p %d", int(default_port())); - const char *args[]= { buffer, " -b ", 0 }; + snprintf(buffer, sizeof(buffer), "%d", int(default_port())); + const char *args[]= { "-p", buffer, "-b", 0 }; + + test_true(exec_cmdline(executable, args, true) <= EXIT_FAILURE); - test_true(exec_cmdline(executable, args)); return TEST_SUCCESS; } test_st memcapable_tests[] ={ - {"--help", 0, help_test}, + {"--quiet", 0, quiet_test}, + {"-h", 0, help_test}, {"-a, ascii", 0, ascii_test}, {"-b, binary", 0, binary_test}, {0, 0, 0} @@ -94,28 +107,20 @@ collection_st collection[] ={ {0, 0, 0, 0} }; -static void *world_create(server_startup_st& servers, test_return_t& error) +static void *world_create(server_startup_st& servers, test_return_t&) { - if (HAVE_MEMCACHED_BINARY == 0) - { - error= TEST_FATAL; - return NULL; - } - - const char *argv[1]= { "memcapable" }; - if (not server_startup(servers, "memcached", MEMCACHED_DEFAULT_PORT +10, 1, argv)) - { - error= TEST_FAILURE; - } + SKIP_UNLESS(libtest::has_memcached()); + + SKIP_UNLESS(server_startup(servers, "memcached", libtest::default_port(), NULL)); return &servers; } -void get_world(Framework *world) +void get_world(libtest::Framework* world) { executable= "./clients/memcapable"; - world->collections= collection; - world->_create= world_create; + world->collections(collection); + world->create(world_create); }