Diligently check poll() a bit more. Also determine number of servers based on cores...
[m6w6/libmemcached] / tests / libmemcached-1.0 / all_tests.cc
index 5aa59f8852e048b098ea8ade94a651b4d4b3947b..2efbdf27803f931a57c04e2bd6388bb92f8a69d0 100644 (file)
@@ -35,8 +35,6 @@
  *
  */
 
-#define TEST_PORT_BASE MEMCACHED_DEFAULT_PORT +10
-
 #include <config.h>
 #include <libtest/test.hpp>
 
 #include "tests/exist.h"
 #include "tests/ketama.h"
 #include "tests/namespace.h"
-#include "tests/parser.h"
 #include "tests/libmemcached-1.0/dump.h"
 #include "tests/libmemcached-1.0/generate.h"
 #include "tests/libmemcached-1.0/haldenbrand.h"
+#include "tests/libmemcached-1.0/parser.h"
 #include "tests/libmemcached-1.0/stat.h"
 #include "tests/touch.h"
 #include "tests/callbacks.h"
@@ -64,6 +62,7 @@
 
 
 #include "tests/libmemcached-1.0/mem_functions.h"
+#include "tests/libmemcached-1.0/encoding_key.h"
 
 /* Collections we are running */
 #include "tests/libmemcached-1.0/all_tests.h"
 
 void get_world(Framework *world)
 {
-  world->collections= collection;
-
-  world->_create= (test_callback_create_fn*)world_create;
-  world->_destroy= (test_callback_destroy_fn*)world_destroy;
+  if (getenv("LIBMEMCACHED_SERVER_NUMBER"))
+  {
+    unsigned long int set_count= strtoul(getenv("LIBMEMCACHED_SERVER_NUMBER"), (char **) NULL, 10);
+    fatal_assert(set_count >= 1);
+    world->servers().set_servers_to_run(set_count);
+  }
+  else
+  {
+    world->servers().set_servers_to_run(libtest::number_of_cpus() > 3 ? 
+                                        libtest::number_of_cpus() : 3);
+  }
 
-  world->item._startup= (test_callback_fn*)world_test_startup;
-  world->item.set_pre((test_callback_fn*)world_pre_run);
-  world->item.set_flush((test_callback_fn*)world_flush);
-  world->item.set_post((test_callback_fn*)world_post_run);
-  world->_on_error= (test_callback_error_fn*)world_on_error;
+  world->collections(collection);
 
-  world->collection_startup= (test_callback_fn*)world_container_startup;
-  world->collection_shutdown= (test_callback_fn*)world_container_shutdown;
+  world->create((test_callback_create_fn*)world_create);
+  world->destroy((test_callback_destroy_fn*)world_destroy);
 
-  world->set_runner(&defualt_libmemcached_runner);
+  world->set_runner(new LibmemcachedRunner);
 
   world->set_socket();
 }