X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Fmemcapable.cc;h=4e7c957da441a8648b941a1a833a7c7ac35c2526;hb=1e8846493e108861a15f71381747c2b0cebc9ed9;hp=f2e347dd69a382c0121a3395b0d663a4aa48c100;hpb=a4f7c3b9413014291d0ca549f32455b3be10a6c0;p=awesomized%2Flibmemcached diff --git a/tests/memcapable.cc b/tests/memcapable.cc index f2e347dd..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_success(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_success(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_success(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,22 +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&) { - 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); }