testing: parser
[m6w6/libmemcached] / test / tests / memcached / servers.cpp
index 27a8aeafb9b986e087c3172319d4968c44321f66..6c66fdbd8dd25011648afd995a06cb3127542938 100644 (file)
@@ -91,29 +91,45 @@ TEST_CASE("memcached_servers") {
     }
   }
 
-  SECTION("regression lp:1048945") {
-    MemcachedPtr memc_ptr(memcached_create(nullptr));
-    auto memc = *memc_ptr;
-    LoneReturnMatcher test{memc};
-    memcached_return status;
+  SECTION("add null/empty") {
+    MemcachedPtr memc;
 
-    auto list = memcached_server_list_append_with_weight(nullptr, "a", 11211, 0, &status);
-    REQUIRE_SUCCESS(status);
+    REQUIRE(MEMCACHED_SUCCESS == memcached_server_add(*memc, nullptr, 0));
+    REQUIRE(1 == memcached_server_count(*memc));
 
-    list = memcached_server_list_append_with_weight(list, "b", 11211, 0, &status);
-    REQUIRE_SUCCESS(status);
+    REQUIRE(MEMCACHED_SUCCESS == memcached_server_add(*memc, "", 0));
+    REQUIRE(2 == memcached_server_count(*memc));
+  }
 
-    list = memcached_server_list_append_with_weight(list, "c", 11211, 0, &status);
-    REQUIRE_SUCCESS(status);
+  SECTION("add many") {
+    MemcachedPtr memc;
 
-    REQUIRE(3 == memcached_server_list_count(list));
+    for (auto i = 0; i < 100; ++i) {
+      REQUIRE(MEMCACHED_SUCCESS == memcached_server_add(*memc, "memc", 11211 + i));
+    }
+    REQUIRE(100 == memcached_server_count(*memc));
+  }
 
-    REQUIRE_SUCCESS(memcached_server_push(memc, list));
-    REQUIRE_SUCCESS(memcached_server_push(memc, list));
-    memcached_server_list_free(list);
+  SECTION("add many weighted") {
+    MemcachedPtr memc;
+
+    for (auto i = 0; i < 100; ++i) {
+      REQUIRE(MEMCACHED_SUCCESS == memcached_server_add_with_weight(*memc, "memc", 11211 +i, i % 10));
+    }
+    REQUIRE(100 == memcached_server_count(*memc));
+  }
+
+  SECTION("reset") {
+    MemcachedPtr memc;
 
-    auto server = memcached_server_by_key(memc, S(__func__), &status);
-    REQUIRE(server);
-    REQUIRE_SUCCESS(status);
+    REQUIRE_FALSE(memcached_server_count(*memc));
+    REQUIRE(MEMCACHED_SUCCESS == memcached_server_add(*memc, "local", 12345));
+    REQUIRE(1 == memcached_server_count(*memc));
+    memcached_servers_reset(*memc);
+    REQUIRE_FALSE(memcached_server_count(*memc));
+    REQUIRE(MEMCACHED_SUCCESS == memcached_server_add(*memc, "local", 12345));
+    REQUIRE(1 == memcached_server_count(*memc));
+    memcached_servers_reset(*memc);
+    REQUIRE_FALSE(memcached_server_count(*memc));
   }
 }