Update with current fixes.
[m6w6/libmemcached] / example / t / memcached_light.cc
index e24d31c2350cdd47b6018eaf709aa5d0d869f780..9158b1425de8dd34c95d164e66015c7eaa58ed3b 100644 (file)
@@ -199,6 +199,12 @@ collection_st collection[] ={
 
 static void *world_create(server_startup_st& servers, test_return_t& error)
 {
+  if (access(executable.c_str(), X_OK) != 0)
+  {
+    error= TEST_SKIPPED;
+    return NULL;
+  }
+
   if (HAVE_MEMCACHED_LIGHT_BINARY == 0)
   {
     error= TEST_SKIPPED;
@@ -208,6 +214,7 @@ static void *world_create(server_startup_st& servers, test_return_t& error)
   if (server_startup(servers, "memcached-light", libtest::default_port(), 0, NULL) == 0)
   {
     error= TEST_FAILURE;
+    return NULL;
   }
 
 
@@ -233,9 +240,9 @@ static bool world_destroy(void *object)
 
 void get_world(Framework *world)
 {
-  world->_create= world_create;
-  world->_destroy= world_destroy;
-  world->collections= collection;
+  world->create(world_create);
+  world->destroy(world_destroy);
+  world->collections(collection);
   world->set_runner(new MemcachedLightRunner);
 }