X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Flibmemcached-1.0%2Fmem_functions.cc;h=9c6ab3deb2bbd1d3f762a53f706417f54f57428a;hb=e0165c033349179841bd1658f4068a9e4c075f66;hp=a6c38c5b1a8c6a5b6ff7b6cd740fddf3889046c6;hpb=95bb4cd1ce48756ca12e5cc1bb6bd6ff8f457908;p=awesomized%2Flibmemcached diff --git a/tests/libmemcached-1.0/mem_functions.cc b/tests/libmemcached-1.0/mem_functions.cc index a6c38c5b..9c6ab3de 100644 --- a/tests/libmemcached-1.0/mem_functions.cc +++ b/tests/libmemcached-1.0/mem_functions.cc @@ -412,6 +412,7 @@ test_return_t clone_test(memcached_st *memc) test_true(memc_clone->retry_timeout == memc->retry_timeout); test_true(memc_clone->send_size == memc->send_size); test_true(memc_clone->server_failure_limit == memc->server_failure_limit); + test_true(memc_clone->server_timeout_limit == memc->server_timeout_limit); test_true(memc_clone->snd_timeout == memc->snd_timeout); test_true(memc_clone->user_data == memc->user_data); @@ -465,7 +466,7 @@ test_return_t libmemcached_string_behavior_test(memcached_st *) { test_true(libmemcached_string_behavior(memcached_behavior_t(x))); } - test_compare(37, int(MEMCACHED_BEHAVIOR_MAX)); + test_compare(38, int(MEMCACHED_BEHAVIOR_MAX)); return TEST_SUCCESS; } @@ -495,7 +496,7 @@ test_return_t memcached_return_t_TEST(memcached_st *memc) 4159057246U, 3425930182U, 2593724503U, 1868899624U, 1769812374U, 2302537950U, 1110330676U, 3365377466U, 1336171666U, 3021258493U, 2334992265U, 3861994737U, - 3582734124U, 3365377466U }; + 3582734124U, 3889811103, 3365377466U }; // You have updated the memcache_error messages but not updated docs/tests. for (int rc= int(MEMCACHED_SUCCESS); rc < int(MEMCACHED_MAXIMUM_RETURN); ++rc) @@ -511,7 +512,7 @@ test_return_t memcached_return_t_TEST(memcached_st *memc) } test_compare(values[rc], hash_val); } - test_compare(49, int(MEMCACHED_MAXIMUM_RETURN)); + test_compare(50, int(MEMCACHED_MAXIMUM_RETURN)); return TEST_SUCCESS; } @@ -716,7 +717,7 @@ test_return_t cas_test(memcached_st *memc) test_compare(MEMCACHED_SUCCESS, memcached_flush(memc, 0)); - test_skip(true, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_SUPPORT_CAS, true)); + test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_SUPPORT_CAS, true)); test_compare(MEMCACHED_SUCCESS, memcached_set(memc, @@ -1766,7 +1767,7 @@ test_return_t mget_execute(memcached_st *original_memc) keys.key_at(x), keys.length_at(x), blob, sizeof(blob), 0, 0); - test_true(rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED); + ASSERT_TRUE_(rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED, "Returned %s", memcached_strerror(NULL, rc)); test_compare(query_id +1, memcached_query_id(memc)); } @@ -2497,14 +2498,15 @@ test_return_t user_supplied_bug10(memcached_st *memc) */ test_return_t user_supplied_bug11(memcached_st *memc) { - memcached_st *mclone= memcached_clone(NULL, memc); - - memcached_behavior_set(mclone, MEMCACHED_BEHAVIOR_NO_BLOCK, true); - memcached_behavior_set(mclone, MEMCACHED_BEHAVIOR_TCP_NODELAY, true); - memcached_behavior_set(mclone, MEMCACHED_BEHAVIOR_POLL_TIMEOUT, size_t(-1)); + (void)memc; +#ifndef __APPLE__ + test::Memc mclone(memc); - test_compare(-1, int32_t(memcached_behavior_get(mclone, MEMCACHED_BEHAVIOR_POLL_TIMEOUT))); + memcached_behavior_set(&mclone, MEMCACHED_BEHAVIOR_NO_BLOCK, true); + memcached_behavior_set(&mclone, MEMCACHED_BEHAVIOR_TCP_NODELAY, true); + memcached_behavior_set(&mclone, MEMCACHED_BEHAVIOR_POLL_TIMEOUT, size_t(-1)); + test_compare(-1, int32_t(memcached_behavior_get(&mclone, MEMCACHED_BEHAVIOR_POLL_TIMEOUT))); libtest::vchar_t value; value.reserve(512); @@ -2515,11 +2517,11 @@ test_return_t user_supplied_bug11(memcached_st *memc) for (unsigned int x= 1; x <= 100000; ++x) { - memcached_return_t rc= memcached_set(mclone, test_literal_param("foo"), &value[0], value.size(), 0, 0); + memcached_return_t rc= memcached_set(&mclone, test_literal_param("foo"), &value[0], value.size(), 0, 0); (void)rc; } - memcached_free(mclone); +#endif return TEST_SUCCESS; } @@ -2621,7 +2623,7 @@ test_return_t user_supplied_bug14(memcached_st *memc) memcached_return_t rc= memcached_set(memc, test_literal_param("foo"), &value[0], current_length, (time_t)0, (uint32_t)0); - test_true(rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED); + ASSERT_TRUE_(rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED, "Instead got %s", memcached_strerror(NULL, rc)); size_t string_length; uint32_t flags; @@ -4164,7 +4166,7 @@ test_return_t regression_bug_442914(memcached_st *original_memc) for (uint32_t x= 0; x < 250; ++x) { - char key[250]; + char key[251]; size_t len= (size_t)snprintf(key, sizeof(key), "%0250u", x); memcached_return_t rc= memcached_delete(memc, key, len, 0); char error_buffer[2048]= { 0 }; @@ -4174,7 +4176,7 @@ test_return_t regression_bug_442914(memcached_st *original_memc) // Delete, and then delete again to look for not found { - char key[250]; + char key[251]; size_t len= snprintf(key, sizeof(key), "%037u", 251U); memcached_return_t rc= memcached_delete(memc, key, len, 0); test_true(rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED); @@ -4558,7 +4560,7 @@ test_return_t wrong_failure_counter_two_test(memcached_st *memc) /* Put a retry timeout to effectively activate failure_limit effect */ test_compare(MEMCACHED_SUCCESS, - memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_RETRY_TIMEOUT, true)); + memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_RETRY_TIMEOUT, 1)); /* change behavior that triggers memcached_quit()*/ test_compare(MEMCACHED_SUCCESS, @@ -4840,6 +4842,32 @@ test_return_t regression_bug_490520(memcached_st *original_memc) return TEST_SUCCESS; } +test_return_t regression_bug_1251482(memcached_st*) +{ + test::Memc memc("--server=localhost:5"); + + memcached_behavior_set(&memc, MEMCACHED_BEHAVIOR_RETRY_TIMEOUT, 0); + + for (size_t x= 0; x < 5; ++x) + { + size_t value_length; + memcached_return_t rc; + char *value= memcached_get(&memc, + test_literal_param(__func__), + &value_length, NULL, &rc); + + test_false(value); + test_compare(0LLU, value_length); + if (x) { + test_ne_compare(MEMCACHED_SUCCESS, rc); + } else { + test_compare(MEMCACHED_CONNECTION_FAILURE, rc); + } + } + + return TEST_SUCCESS; +} + test_return_t regression_1009493_TEST(memcached_st*) { memcached_st* memc= memcached_create(NULL); @@ -5055,8 +5083,11 @@ test_return_t kill_HUP_TEST(memcached_st *original_memc) test_literal_param(__func__), // Keys test_literal_param(__func__), // Values 0, 0); - test_compare(ret, memc); - test_compare(MEMCACHED_CONNECTION_FAILURE, memc); + if (ret == MEMCACHED_ERRNO) { + test_compare(EPIPE, memcached_last_error_errno(memc)); + } else { + test_compare(MEMCACHED_CONNECTION_FAILURE, ret); + } memcached_free(memc);