X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=tests%2Fmem_functions.c;h=a69d35acb6c45745ab8ef177e96ce3a9a2c59395;hb=3dee67d04099cc5e2986ed94aa612f429f54d6fb;hp=7eb8e83b0de26889ccdaf12a688c7780f7510734;hpb=385cc099521ab79b8ecb289cd25c46d7cf3caa5c;p=awesomized%2Flibmemcached diff --git a/tests/mem_functions.c b/tests/mem_functions.c index 7eb8e83b..a69d35ac 100644 --- a/tests/mem_functions.c +++ b/tests/mem_functions.c @@ -401,10 +401,10 @@ static test_return_t error_test(memcached_st *memc) 2300930706U, 2943759320U, 674306647U, 2400528935U, 54481931U, 4186304426U, 1741088401U, 2979625118U, 4159057246U, 3425930182U, 2593724503U, 1868899624U, - 1769812374U, 2302537950U, 1110330676U }; + 1769812374U, 2302537950U, 1110330676U, 3365377466U, + 1336171666U, 3365377466U }; // You have updated the memcache_error messages but not updated docs/tests. - test_true(MEMCACHED_MAXIMUM_RETURN == 43); for (rc= MEMCACHED_SUCCESS; rc < MEMCACHED_MAXIMUM_RETURN; rc++) { uint32_t hash_val; @@ -418,6 +418,7 @@ static test_return_t error_test(memcached_st *memc) } test_true(values[rc] == hash_val); } + test_true(MEMCACHED_MAXIMUM_RETURN == 45); return TEST_SUCCESS; } @@ -774,8 +775,8 @@ static memcached_return_t server_function(const memcached_st *ptr, static test_return_t memcached_server_cursor_test(memcached_st *memc) { - char context[8]; - strcpy(context, "foo bad"); + char context[10]; + strncpy(context, "foo bad", sizeof(context)); memcached_server_fn callbacks[1]; callbacks[0]= server_function; @@ -3995,13 +3996,13 @@ static test_return_t set_prefix(memcached_st *memc) /* Test a long key for failure */ /* TODO, extend test to determine based on setting, what result should be */ - strcpy(long_key, "Thisismorethentheallottednumberofcharacters"); + strncpy(long_key, "Thisismorethentheallottednumberofcharacters", sizeof(long_key)); rc= memcached_callback_set(memc, MEMCACHED_CALLBACK_PREFIX_KEY, long_key); //test_true(rc == MEMCACHED_BAD_KEY_PROVIDED); test_true(rc == MEMCACHED_SUCCESS); /* Now test a key with spaces (which will fail from long key, since bad key is not set) */ - strcpy(long_key, "This is more then the allotted number of characters"); + strncpy(long_key, "This is more then the allotted number of characters", sizeof(long_key)); rc= memcached_callback_set(memc, MEMCACHED_CALLBACK_PREFIX_KEY, long_key); test_true(rc == MEMCACHED_BAD_KEY_PROVIDED); @@ -4009,7 +4010,7 @@ static test_return_t set_prefix(memcached_st *memc) rc= memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_VERIFY_KEY, 1); test_true(rc == MEMCACHED_SUCCESS); - strcpy(long_key, "dog cat"); + strncpy(long_key, "dog cat", sizeof(long_key)); rc= memcached_callback_set(memc, MEMCACHED_CALLBACK_PREFIX_KEY, long_key); test_true(rc == MEMCACHED_BAD_KEY_PROVIDED); } @@ -4594,7 +4595,7 @@ static test_return_t hash_sanity_test (memcached_st *memc) static test_return_t hsieh_avaibility_test (memcached_st *memc) { - memcached_return_t expected_rc= MEMCACHED_FAILURE; + memcached_return_t expected_rc= MEMCACHED_INVALID_ARGUMENTS; #ifdef HAVE_HSIEH_HASH expected_rc= MEMCACHED_SUCCESS; #endif @@ -4607,7 +4608,7 @@ static test_return_t hsieh_avaibility_test (memcached_st *memc) static test_return_t murmur_avaibility_test (memcached_st *memc) { - memcached_return_t expected_rc= MEMCACHED_FAILURE; + memcached_return_t expected_rc= MEMCACHED_INVALID_ARGUMENTS; #ifdef HAVE_MURMUR_HASH expected_rc= MEMCACHED_SUCCESS; #endif @@ -5708,9 +5709,11 @@ static test_return_t wrong_failure_counter_two_test(memcached_st *memc) /* put failure limit to 1 */ rc= memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT, 1); assert(rc == MEMCACHED_SUCCESS); + /* Put a retry timeout to effectively activate failure_limit effect */ rc= memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_RETRY_TIMEOUT, 1); assert(rc == MEMCACHED_SUCCESS); + /* change behavior that triggers memcached_quit()*/ rc= memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_TCP_NODELAY, 1); assert(rc == MEMCACHED_SUCCESS); @@ -6318,13 +6321,17 @@ test_st error_conditions[] ={ test_st parser_tests[] ={ {"behavior", 0, (test_callback_fn)behavior_parser_test }, {"boolean_options", 0, (test_callback_fn)parser_boolean_options_test }, + {"configure_file", 0, (test_callback_fn)memcached_create_with_options_with_filename }, {"distribtions", 0, (test_callback_fn)parser_distribution_test }, {"hash", 0, (test_callback_fn)parser_hash_test }, + {"libmemcached_check_configuration", 0, (test_callback_fn)libmemcached_check_configuration_test }, + {"libmemcached_check_configuration_with_filename", 0, (test_callback_fn)libmemcached_check_configuration_with_filename_test }, + {"memcached_parse_configure_file", 0, (test_callback_fn)memcached_parse_configure_file_test }, {"number_options", 0, (test_callback_fn)parser_number_options_test }, + {"randomly generated options", 0, (test_callback_fn)random_statement_build_test }, + {"prefix_key", 0, (test_callback_fn)parser_key_prefix_test }, {"server", 0, (test_callback_fn)server_test }, {"servers", 0, (test_callback_fn)servers_test }, - {"prefix_key", 0, (test_callback_fn)parser_key_prefix_test }, - {"memcached_parse_file_options", 0, (test_callback_fn)memcached_parse_file_options_test }, {0, 0, (test_callback_fn)0} };