Fix for test cases to make sure memcached is around.
authorBrian Aker <brian@tangent.org>
Fri, 25 May 2012 00:57:33 +0000 (20:57 -0400)
committerBrian Aker <brian@tangent.org>
Fri, 25 May 2012 00:57:33 +0000 (20:57 -0400)
19 files changed:
libtest/binaries.cc
libtest/binaries.h
libtest/has.cc
libtest/has.hpp
libtest/unittest.cc
tests/cycle.cc
tests/libmemcached_world.h
tests/libmemcached_world_socket.h
tests/memcapable.cc
tests/memcat.cc
tests/memcp.cc
tests/memdump.cc
tests/memerror.cc
tests/memexist.cc
tests/memflush.cc
tests/memrm.cc
tests/memslap.cc
tests/memstat.cc
tests/memtouch.cc

index c3e2e5b795a46af6d3ab47958a03234ec4fc9a7e..d5e0cc72e1ad484bc7414c3789a5a4d162403320 100644 (file)
  */
 
 #include <config.h>
-#include <libtest/common.h>
 
 namespace libtest {
 
-bool has_gearmand_binary()
-{
-#if defined(HAVE_GEARMAND_BINARY) && HAVE_GEARMAND_BINARY
-  std::stringstream arg_buffer;
-
-  if (getenv("PWD"))
-  {
-    arg_buffer << getenv("PWD");
-    arg_buffer << "/";
-  }
-  arg_buffer << GEARMAND_BINARY;
-
-  if (access(arg_buffer.str().c_str() ,R_OK|X_OK) == 0)
-  {
-    return true;
-  }
-#endif
-
-  return false;
-}
-
-bool has_drizzled_binary()
-{
-#if defined(HAVE_DRIZZLED_BINARY) && HAVE_DRIZZLED_BINARY
-  if (access(DRIZZLED_BINARY, R_OK|X_OK) == 0)
-  {
-    return true;
-  }
-#endif
-
-  return false;
-}
-
-bool has_memcached_binary()
-{
-#if defined(HAVE_MEMCACHED_BINARY) && HAVE_MEMCACHED_BINARY
-  if (access(MEMCACHED_BINARY, R_OK|X_OK) == 0)
-  {
-    return true;
-  }
-#endif
-
-  return false;
-}
-
-bool has_memcached_sasl_binary()
-{
-#if defined(HAVE_MEMCACHED_SASL_BINARY) && HAVE_MEMCACHED_SASL_BINARY
-  if (access(MEMCACHED_SASL_BINARY, R_OK|X_OK) == 0)
-  {
-    return true;
-  }
-#endif
-
-  return false;
-}
-
 }
index 4ec663e65300cdc654b5c6a7fa245b024226ebcc..7829f3f067e4d061d806e9ce37b340cef3020c74 100644 (file)
 
 namespace libtest {
 
-LIBTEST_API
-bool has_memcached_binary();
-
-LIBTEST_API
-bool has_memcached_sasl_binary();
-
-LIBTEST_API
-bool has_gearmand_binary();
-
-LIBTEST_API
-bool has_drizzled_binary();
-
 } // namespace libtest
-
index 1c7b049306fcd179df18a44be8bad916ca9502f7..699a1326a4364b96b46b78ed492d26277beed345 100644 (file)
  */
 
 #include <config.h>
-#include <libtest/has.hpp>
+#include <libtest/common.h>
 
 #include <cstdlib>
+#include <unistd.h>
+
+namespace libtest {
 
 bool has_memcached_support(void)
 {
-  if (HAVE_LIBMEMCACHED and HAVE_MEMCACHED_BINARY)
+  if (HAVE_LIBMEMCACHED)
   {
     return true;
   }
@@ -49,9 +52,9 @@ bool has_memcached_support(void)
   return false;
 }
 
-bool has_drizzle_support(void)
+bool has_libdrizzle(void)
 {
-  if (HAVE_LIBDRIZZLE and HAVE_DRIZZLED_BINARY)
+  if (HAVE_LIBDRIZZLE)
   {
     return true;
   }
@@ -63,7 +66,6 @@ bool has_postgres_support(void)
 {
   if (getenv("POSTGES_IS_RUNNING_AND_SETUP"))
   {
-
     if (HAVE_LIBPQ)
     {
       return true;
@@ -72,3 +74,67 @@ bool has_postgres_support(void)
 
   return false;
 }
+
+
+bool has_gearmand()
+{
+  if (HAVE_GEARMAND_BINARY)
+  {
+    std::stringstream arg_buffer;
+
+    if (getenv("PWD"))
+    {
+      arg_buffer << getenv("PWD");
+      arg_buffer << "/";
+    }
+    arg_buffer << GEARMAND_BINARY;
+
+    if (access(arg_buffer.str().c_str(), X_OK) == 0)
+    {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+bool has_drizzled()
+{
+  if (HAVE_DRIZZLED_BINARY)
+  {
+    if (access(DRIZZLED_BINARY, X_OK) == 0)
+    {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+bool has_memcached()
+{
+  if (HAVE_MEMCACHED_BINARY)
+  {
+    if (access(MEMCACHED_BINARY, X_OK) == 0)
+    {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+bool has_memcached_sasl()
+{
+  if (HAVE_MEMCACHED_SASL_BINARY)
+  {
+    if (access(MEMCACHED_SASL_BINARY, X_OK) == 0)
+    {
+      return true;
+    }
+  }
+
+  return false;
+}
+
+} // namespace libtest
index 176bf9fda2a5d740269ae2b31fc8c55aaaec1213..68593d74f1360918fad4335ff7ca2890623bb997 100644 (file)
 
 #pragma once
 
-bool has_memcached_support(void);
+namespace libtest {
 
-bool has_drizzle_support(void);
+LIBTEST_API
+bool has_libmemcached();
 
-bool has_postgres_support(void);
+LIBTEST_API
+bool has_libdrizzle();
+
+LIBTEST_API
+bool has_postgres_support();
+
+LIBTEST_API
+bool has_memcached();
+
+LIBTEST_API
+bool has_memcached_sasl();
+
+LIBTEST_API
+bool has_gearmand();
+
+LIBTEST_API
+bool has_drizzled();
+
+} // namespace libtest
index c27f366a8b5670ce56a081fb421ab56b15063d2b..56df76ba1e5853769c379ee1cd76e6b4feb95253 100644 (file)
@@ -265,10 +265,10 @@ static test_return_t drizzled_cycle_test(void *object)
   test_true(servers and servers->validate());
 
 #if defined(HAVE_GEARMAND_BINARY) && HAVE_GEARMAND_BINARY
-  test_true(has_drizzled_binary());
+  test_true(has_drizzled());
 #endif
 
-  test_skip(true, has_drizzled_binary());
+  test_skip(true, has_drizzled());
 
   test_true(server_startup(*servers, "drizzled", get_free_port(), 0, NULL));
 
@@ -281,10 +281,10 @@ static test_return_t gearmand_cycle_test(void *object)
   test_true(servers and servers->validate());
 
 #if defined(HAVE_GEARMAND_BINARY) && HAVE_GEARMAND_BINARY
-  test_true(has_gearmand_binary());
+  test_true(has_gearmand());
 #endif
 
-  test_skip(true, has_gearmand_binary());
+  test_skip(true, has_gearmand());
 
   test_true(server_startup(*servers, "gearmand", get_free_port(), 0, NULL));
 
@@ -333,7 +333,7 @@ static test_return_t memcached_cycle_test(void *object)
 
   if (MEMCACHED_BINARY and HAVE_LIBMEMCACHED) 
   {
-    test_true(has_memcached_binary());
+    test_true(has_memcached());
     test_true(server_startup(*servers, "memcached", get_free_port(), 0, NULL));
 
     return TEST_SUCCESS;
@@ -351,7 +351,7 @@ static test_return_t memcached_socket_cycle_test(void *object)
   {
     if (HAVE_LIBMEMCACHED)
     {
-      test_true(has_memcached_binary());
+      test_true(has_memcached());
       test_true(servers->start_socket_server("memcached", get_free_port(), 0, NULL));
 
       return TEST_SUCCESS;
@@ -372,7 +372,7 @@ static test_return_t memcached_sasl_test(void *object)
   {
     if (HAVE_LIBMEMCACHED)
     {
-      test_true(has_memcached_sasl_binary());
+      test_true(has_memcached_sasl());
       test_true(server_startup(*servers, "memcached-sasl", get_free_port(), 0, NULL));
 
       return TEST_SUCCESS;
@@ -757,14 +757,14 @@ static test_return_t default_port_TEST(void *)
 static test_return_t check_for_gearman(void *)
 {
   test_skip(true, HAVE_LIBGEARMAN);
-  test_skip(true, has_gearmand_binary());
+  test_skip(true, has_gearmand());
   return TEST_SUCCESS;
 }
 
 static test_return_t check_for_drizzle(void *)
 {
   test_skip(true, HAVE_LIBDRIZZLE);
-  test_skip(true, has_drizzled_binary());
+  test_skip(true, has_drizzled());
   return TEST_SUCCESS;
 }
 
@@ -786,7 +786,7 @@ test_st gearmand_tests[] ={
 static test_return_t check_for_libmemcached(void *)
 {
   test_skip(true, HAVE_LIBMEMCACHED);
-  test_skip(true, has_memcached_binary());
+  test_skip(true, has_memcached());
   return TEST_SUCCESS;
 }
 
index fe4ca1b37016180dc860924f7f37bd2dea28ee74..679473eadd02c823b19dbc98502e5dcddfddee0a 100644 (file)
@@ -116,8 +116,14 @@ collection_st collection[] ={
   {0, 0, 0, 0}
 };
 
-static void *world_create(server_startup_st& servers, test_return_t& )
+static void *world_create(server_startup_st& servers, test_return_t& error)
 {
+  if (libtest::has_memcached() == false)
+  {
+    error= TEST_SKIPPED;
+    return NULL;
+  }
+
   return &servers;
 }
 
index 88329db4a85f595edf4fd083fbedd18ce1f25cc4..8bc48a71755102d9747a3d3ab22d186c64ffdb7b 100644 (file)
@@ -43,7 +43,7 @@
 
 static void *world_create(libtest::server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 9ea175e37243f6be521cff1f7b5f4a7f36f60d34..fbfb5a9cd14a2353135646fbc9bea47f8a649316 100644 (file)
@@ -45,7 +45,7 @@
 
 static void *world_create(libtest::server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index d0392d016afd69900c2c0ffaedc4c112c119a7b4..2723e7f656783bd52dca18b4ef6d02eaf09edfa3 100644 (file)
@@ -107,7 +107,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 32e3f2c3c7cfe45777057e799e8305bb34a2256d..f70da3be2fab0cabeb26a4f2c60fcc846ad37d69 100644 (file)
@@ -126,7 +126,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 8aba60883cc5d66f39b38b46a3739491aa2a58a5..590f1af3b563a442a2e99aa478667e8c57fbf51d 100644 (file)
@@ -85,7 +85,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index a8720e5b272c2fc520285c99dfd51cf910519f0b..ac1619c317fbbb1372bb49ecc4e7a3f6dc85e0b4 100644 (file)
@@ -112,7 +112,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index dd7610ef625cb9be3a23cbb47742fa959f21535d..1c893e11b5851b4244cba2412801c4282baf57ac 100644 (file)
@@ -111,8 +111,14 @@ collection_st collection[] ={
   {0, 0, 0, 0}
 };
 
-static void *world_create(server_startup_st&, test_return_t&)
+static void *world_create(server_startup_st&, test_return_t& error)
 {
+  if (libtest::has_memcached() == false)
+  {
+    error= TEST_SKIPPED;
+    return NULL;
+  }
+
   return NULL;
 }
 
index fb69354dac4975694db3182940c1042804425130..a9430a33c2dfe901058c3ccbd8d28d7e02def797 100644 (file)
@@ -143,7 +143,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 80a42453068e8fb35092b97c55f41fd1488c4d16..d8e0b5f800a9552b12b76c4f40e668b8f6711266 100644 (file)
@@ -95,7 +95,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 29c663376a33f63d2e6102a4c770bc018874d707..5c3b6d529c3918f52d3a65e7f059c2bcd7e145f5 100644 (file)
@@ -146,7 +146,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 3c5ea25030e2e36af734b6022f0f9a3e077ae4f8..57b7c3554ef3a00bd4019dc9cf8ae88c1cb20905 100644 (file)
@@ -167,7 +167,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index 9b61697dda6ab45b500763a3b0c898c99c6ef46d..b6053aeb20723da525e05e1345b56ed7b8ccf1ae 100644 (file)
@@ -107,7 +107,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
index c44e6a08dcca5ac67d06eb34ccc8032b6cd097e5..647485e44e9119964063b5f65f0c97c317479885 100644 (file)
@@ -139,7 +139,7 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
-  if (HAVE_MEMCACHED_BINARY == 0)
+  if (libtest::has_memcached() == false)
   {
     error= TEST_SKIPPED;
     return NULL;
@@ -160,4 +160,3 @@ void get_world(Framework *world)
   world->collections(collection);
   world->create(world_create);
 }
-