#include <signal.h>
-#include <libtest/stats.h>
-#include <libtest/signal.h>
-
#ifndef __INTEL_COMPILER
#pragma GCC diagnostic ignored "-Wold-style-cast"
#endif
using namespace libtest;
-static in_port_t global_port= 0;
-static char global_socket[1024];
-
-in_port_t default_port()
-{
- return global_port;
-}
-
-void set_default_port(in_port_t port)
-{
- global_port= port;
-}
-
-const char *default_socket()
-{
- assert(global_socket[0]);
- return global_socket;
-}
-
-bool test_is_local()
-{
- return (getenv("LIBTEST_LOCAL"));
-}
-
-void set_default_socket(const char *socket)
-{
- if (socket)
- {
- strncpy(global_socket, socket, strlen(socket));
- }
-}
-
static void stats_print(Stats *stats)
{
if (stats->collection_failed == 0 and stats->collection_success == 0)
return s + us;
}
-const char *test_strerror(test_return_t code)
+static Framework *world= NULL;
+int main(int argc, char *argv[])
{
- switch (code) {
- case TEST_SUCCESS:
- return "ok";
-
- case TEST_FAILURE:
- return "failed";
-
- case TEST_MEMORY_ALLOCATION_FAILURE:
- return "memory allocation";
-
- case TEST_SKIPPED:
- return "skipped";
+ srandom((unsigned int)time(NULL));
- case TEST_FATAL:
- break;
+ if (getenv("LIBTEST_QUIET"))
+ {
+ close(STDOUT_FILENO);
}
- return "failed";
-}
+ char buffer[1024];
+ if (getenv("LIBTEST_TMP"))
+ {
+ snprintf(buffer, sizeof(buffer), "%s", getenv("LIBTEST_TMP"));
+ }
+ else
+ {
+ snprintf(buffer, sizeof(buffer), "%s", LIBTEST_TEMP);
+ }
-void create_core(void)
-{
- if (getenv("LIBMEMCACHED_NO_COREDUMP") == NULL)
+ if (chdir(buffer) == -1)
{
- pid_t pid= fork();
+ char getcwd_buffer[1024];
+ char *dir= getcwd(getcwd_buffer, sizeof(getcwd_buffer));
- if (pid == 0)
- {
- abort();
- }
- else
- {
- while (waitpid(pid, NULL, 0) != pid) {};
- }
+ Error << "Unable to chdir() from " << dir << " to " << buffer << " errno:" << strerror(errno);
+ return EXIT_FAILURE;
}
-}
-static Framework *world= NULL;
-int main(int argc, char *argv[])
-{
- srandom((unsigned int)time(NULL));
+ if (libtest::libtool() == NULL)
+ {
+ Error << "Failed to locate libtool";
+ return EXIT_FAILURE;
+ }
world= new Framework();
- if (not world)
+ if (world == NULL)
{
+ Error << "Failed to create Framework()";
return EXIT_FAILURE;
}
case TEST_FATAL:
case TEST_FAILURE:
case TEST_MEMORY_ALLOCATION_FAILURE:
- Error << argv[0] << "create() failed";
delete world;
return EXIT_FAILURE;
}
}
else if (getenv("TEST_COLLECTION"))
{
- collection_to_run= getenv("TEST_COLLECTION");
+ if (strlen(getenv("TEST_COLLECTION")))
+ {
+ collection_to_run= getenv("TEST_COLLECTION");
+ }
}
if (collection_to_run)