Ubuntu 10.10 32bit fixes.
[awesomized/libmemcached] / tests / namespace.cc
index 15975c6485eb589c425995e2b9c8ade18731265a..57ecc60667d0f3e2273cad75b1f648184c7eddf2 100644 (file)
  *
  */
 
-#include <libtest/common.h>
+#include <config.h>
+#include <libtest/test.hpp>
+
+using namespace libtest;
+
+#include <libmemcached/memcached.h>
+
+#include <tests/namespace.h>
 
 test_return_t memcached_increment_namespace(memcached_st *memc)
 {
   uint64_t new_number;
-  memcached_return_t rc;
-  const char *key= "number";
-  const char *value= "0";
 
   test_compare(MEMCACHED_SUCCESS, 
                memcached_set(memc, 
@@ -54,23 +58,51 @@ test_return_t memcached_increment_namespace(memcached_st *memc)
                memcached_increment(memc,
                                    test_literal_param("number"),
                                    1, &new_number));
-  test_compare(1, new_number);
+  test_compare(uint64_t(1), new_number);
 
   test_compare(MEMCACHED_SUCCESS, 
                memcached_increment(memc,
                                    test_literal_param("number"),
                                    1, &new_number));
-  test_compare(2, new_number);
+  test_compare(uint64_t(2), new_number);
 
   memcached_st *clone= memcached_clone(NULL, memc);
 
+  test_compare(MEMCACHED_SUCCESS, 
+               memcached_callback_set(clone, MEMCACHED_CALLBACK_NAMESPACE, "all_your_bases"));
+
   test_compare(MEMCACHED_NOTFOUND, 
-               memcached_increment(memc,
+               memcached_increment(clone,
+                                   test_literal_param("number"),
+                                   1, &new_number));
+
+  test_compare(MEMCACHED_SUCCESS, 
+               memcached_add(clone, 
+                             test_literal_param("number"),
+                             test_literal_param("10"),
+                             (time_t)0, (uint32_t)0));
+
+  char *value= memcached_get(clone, 
+                             test_literal_param("number"),
+                             0, 0, 0);
+  test_true(value);
+  test_compare(2UL, strlen(value));
+  test_strcmp("10", value);
+  free(value);
+
+  test_compare(MEMCACHED_SUCCESS, 
+               memcached_increment(clone,
                                    test_literal_param("number"),
                                    1, &new_number));
-  test_compare(1, new_number);
+  test_compare(uint64_t(11), new_number);
 
+  test_compare(MEMCACHED_SUCCESS, 
+               memcached_increment(memc,
+                                   test_literal_param("number"),
+                                   1, &new_number));
+  test_compare(uint64_t(3), new_number);
 
+  memcached_free(clone);
 
   return TEST_SUCCESS;
 }