-static test_return_t _runner_default(libmemcached_test_callback_fn func, libmemcached_test_container_st *container)
-{
- if (func)
- {
- test_true(container);
- test_true(container->memc);
- test_return_t ret;
- try {
- ret= func(container->memc);
- }
- catch (std::exception& e)
- {
- libtest::Error << e.what();
- return TEST_FAILURE;
- }
-
- return ret;
- }
-
- return TEST_SUCCESS;
-}
-
-static test_return_t _pre_runner_default(libmemcached_test_callback_fn func, libmemcached_test_container_st *container)
-{
- if (func)
- {
- return func(container->parent);
- }
-
- return TEST_SUCCESS;
-}
-
-static test_return_t _post_runner_default(libmemcached_test_callback_fn func, libmemcached_test_container_st *container)
-{
- if (func)
- {
- return func(container->parent);
- }
-
- return TEST_SUCCESS;
-}
-
-class LibmemcachedRunner : public libtest::Runner {
-public:
- test_return_t run(test_callback_fn* func, void *object)
- {
- return _runner_default(libmemcached_test_callback_fn(func), (libmemcached_test_container_st*)object);
- }
-
- test_return_t pre(test_callback_fn* func, void *object)
- {
- return _pre_runner_default(libmemcached_test_callback_fn(func), (libmemcached_test_container_st*)object);
- }
-
- test_return_t post(test_callback_fn* func, void *object)
- {
- return _post_runner_default(libmemcached_test_callback_fn(func), (libmemcached_test_container_st*)object);
- }
-};
-
-static LibmemcachedRunner defualt_libmemcached_runner;