Catch up with Gearman's libtest
[m6w6/libmemcached] / tests / hash_plus.cc
index 140d28fcae35a49d7574c1aa57ad810cea504848..9cb4b384e777e68ea011a495925798751c40f281 100644 (file)
@@ -1,29 +1,32 @@
 /*
   C++ to libhashkit
 */
-#include <libtest/test.h>
+
+#include <config.h>
+
+#include <libtest/test.hpp>
 
 #include <cstdio>
 #include <cstdlib>
 #include <cstring>
 
-#include <libhashkit/hashkit.h>
+#include <libhashkit-1.0/hashkit.hpp>
+
+using namespace libtest;
 
-#include "hash_results.h"
+#include "tests/hash_results.h"
 
-static test_return_t exists_test(void *obj)
+static test_return_t exists_test(void *)
 {
   Hashkit hashk;
-  (void)obj;
   (void)hashk;
 
   return TEST_SUCCESS;
 }
 
-static test_return_t new_test(void *obj)
+static test_return_t new_test(void *)
 {
   Hashkit *hashk= new Hashkit;
-  (void)obj;
 
   (void)hashk;
 
@@ -32,11 +35,10 @@ static test_return_t new_test(void *obj)
   return TEST_SUCCESS;
 }
 
-static test_return_t copy_test(void *obj)
+static test_return_t copy_test(void *)
 {
   Hashkit *hashk= new Hashkit;
   Hashkit *copy(hashk);
-  (void)obj;
 
   (void)copy;
 
@@ -45,11 +47,10 @@ static test_return_t copy_test(void *obj)
   return TEST_SUCCESS;
 }
 
-static test_return_t assign_test(void *obj)
+static test_return_t assign_test(void *)
 {
   Hashkit hashk;
   Hashkit copy;
-  (void)obj;
 
   copy= hashk;
 
@@ -58,13 +59,10 @@ static test_return_t assign_test(void *obj)
   return TEST_SUCCESS;
 }
 
-static test_return_t digest_test(void *obj)
+static test_return_t digest_test(void *)
 {
   Hashkit hashk;
-  uint32_t value;
-  (void)obj;
-
-  value= hashk.digest("Foo", sizeof("Foo"));
+  test_true(hashk.digest("Foo", sizeof("Foo")));
 
   return TEST_SUCCESS;
 }
@@ -90,7 +88,12 @@ static test_return_t set_function_test(void *)
   {
     hashkit_return_t rc= hashk.set_function(*algo);
 
-    test_true(rc == HASHKIT_SUCCESS);
+    if (rc == HASHKIT_INVALID_ARGUMENT)
+    {
+      continue;
+    }
+
+    test_compare(HASHKIT_SUCCESS, rc);
 
     uint32_t *list;
     switch (*algo)
@@ -98,42 +101,46 @@ static test_return_t set_function_test(void *)
     case HASHKIT_HASH_DEFAULT:
       list= one_at_a_time_values;
       break;
+
     case HASHKIT_HASH_MD5:
       list= md5_values;
       break;
+
     case HASHKIT_HASH_CRC:
       list= crc_values;
       break;
+
     case HASHKIT_HASH_FNV1_64:
       list= fnv1_64_values;
       break;
+
     case HASHKIT_HASH_FNV1A_64:
       list= fnv1a_64_values;
       break;
+
     case HASHKIT_HASH_FNV1_32:
       list= fnv1_32_values;
       break;
+
     case HASHKIT_HASH_FNV1A_32:
       list= fnv1a_32_values;
       break;
+
     case HASHKIT_HASH_HSIEH:
-#ifndef HAVE_HSIEH_HASH
-      continue;
-#endif
       list= hsieh_values;
       break;
+
     case HASHKIT_HASH_MURMUR:
 #ifdef WORDS_BIGENDIAN
       continue;
-#endif
-#ifndef HAVE_MURMUR_HASH
-      continue;
 #endif
       list= murmur_values;
       break;
+
     case HASHKIT_HASH_JENKINS:
       list= jenkins_values;
       break;
+
     case HASHKIT_HASH_CUSTOM:
     case HASHKIT_HASH_MAX:
     default:
@@ -158,25 +165,23 @@ static test_return_t set_function_test(void *)
   return TEST_SUCCESS;
 }
 
-static test_return_t set_distribution_function_test(void *obj)
+static test_return_t set_distribution_function_test(void *)
 {
   Hashkit hashk;
   hashkit_return_t rc;
-  (void)obj;
 
   rc= hashk.set_distribution_function(HASHKIT_HASH_CUSTOM);
   test_true_got(rc == HASHKIT_FAILURE or rc == HASHKIT_INVALID_ARGUMENT, hashkit_strerror(NULL, rc));
 
-  rc= hashk.set_distribution_function(HASHKIT_HASH_JENKINS);
-  test_true(rc == HASHKIT_SUCCESS);
+  test_compare(HASHKIT_SUCCESS,
+               hashk.set_distribution_function(HASHKIT_HASH_JENKINS));
 
   return TEST_SUCCESS;
 }
 
-static test_return_t compare_function_test(void *obj)
+static test_return_t compare_function_test(void *)
 {
   Hashkit a, b;
-  (void)obj;
 
   b= a;
   
@@ -192,14 +197,14 @@ static test_return_t compare_function_test(void *obj)
 }
 
 test_st basic[] ={
-  { "exists", 0, reinterpret_cast<test_callback_fn>(exists_test) },
-  { "new", 0, reinterpret_cast<test_callback_fn>(new_test) },
-  { "copy", 0, reinterpret_cast<test_callback_fn>(copy_test) },
-  { "assign", 0, reinterpret_cast<test_callback_fn>(assign_test) },
-  { "digest", 0, reinterpret_cast<test_callback_fn>(digest_test) },
-  { "set_function", 0, reinterpret_cast<test_callback_fn>(set_function_test) },
-  { "set_distribution_function", 0, reinterpret_cast<test_callback_fn>(set_distribution_function_test) },
-  { "compare", 0, reinterpret_cast<test_callback_fn>(compare_function_test) },
+  { "exists", 0, reinterpret_cast<test_callback_fn*>(exists_test) },
+  { "new", 0, reinterpret_cast<test_callback_fn*>(new_test) },
+  { "copy", 0, reinterpret_cast<test_callback_fn*>(copy_test) },
+  { "assign", 0, reinterpret_cast<test_callback_fn*>(assign_test) },
+  { "digest", 0, reinterpret_cast<test_callback_fn*>(digest_test) },
+  { "set_function", 0, reinterpret_cast<test_callback_fn*>(set_function_test) },
+  { "set_distribution_function", 0, reinterpret_cast<test_callback_fn*>(set_distribution_function_test) },
+  { "compare", 0, reinterpret_cast<test_callback_fn*>(compare_function_test) },
   { 0, 0, 0}
 };
 
@@ -208,7 +213,7 @@ collection_st collection[] ={
   {0, 0, 0, 0}
 };
 
-void get_world(world_st *world)
+void get_world(Framework *world)
 {
-  world->collections= collection;
+  world->collections(collection);
 }