*/
typedef int (*EvaluationCallback) (void);
+/**
+ * @brief Do we have Churn?
+ */
+enum OPTION_CHURN {
+ /**
+ * @brief If we have churn this is set
+ */
+ HAVE_CHURN,
+ /**
+ * @brief If we have no churn this is set
+ */
+ HAVE_NO_CHURN,
+};
+
+/**
+ * @brief Is it ok to quit the test before the timeout?
+ */
+enum OPTION_QUICK_QUIT {
+ /**
+ * @brief It is ok for the test to quit before the timeout triggers
+ */
+ HAVE_QUICK_QUIT,
+
+ /**
+ * @brief It is NOT ok for the test to quit before the timeout triggers
+ */
+ HAVE_NO_QUICK_QUIT,
+};
/**
* Structure to define a single test
uint32_t num_requests;
/**
- * Run with churn
+ * Run with (-out) churn
+ */
+ enum OPTION_CHURN have_churn;
+
+ /**
+ * Quit test before timeout?
*/
- int have_churn;
+ enum OPTION_QUICK_QUIT have_quick_quit;
} cur_test_run;
/**
rps_peer->num_recv_ids++;
}
- if (0 == evaluate () && 0 != strncmp (cur_test_run.name, "test-rps-churn", 14))
+ if (0 == evaluate () && HAVE_QUICK_QUIT == cur_test_run.have_quick_quit)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Test succeeded before timeout\n");
GNUNET_assert (NULL != shutdown_task);
}
/* Start churn */
- if (GNUNET_YES == cur_test_run.have_churn && NULL == churn_task)
+ if (HAVE_CHURN == cur_test_run.have_churn && NULL == churn_task)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Starting churn task\n");
}
/* Start churn */
- if (GNUNET_YES == cur_test_run.have_churn && NULL == churn_task)
+ if (HAVE_CHURN == cur_test_run.have_churn && NULL == churn_task)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Starting churn task\n");
cur_test_run.pre_test = NULL;
cur_test_run.reply_handle = default_reply_handle;
cur_test_run.eval_cb = default_eval_cb;
- cur_test_run.have_churn = GNUNET_YES;
+ cur_test_run.have_churn = HAVE_CHURN;
churn_task = NULL;
timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 30);
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Test single request\n");
cur_test_run.name = "test-rps-single-req";
cur_test_run.main_test = single_req_cb;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
}
else if (strstr (argv[0], "_delayed_reqs") != NULL)
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Test delayed requests\n");
cur_test_run.name = "test-rps-delayed-reqs";
cur_test_run.main_test = delay_req_cb;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
}
else if (strstr (argv[0], "_seed_big") != NULL)
cur_test_run.name = "test-rps-seed-big";
cur_test_run.main_test = seed_big_cb;
cur_test_run.eval_cb = no_eval;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10);
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Test seeding and requesting on a single peer\n");
cur_test_run.name = "test-rps-single-peer-seed";
cur_test_run.main_test = single_peer_seed_cb;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
}
else if (strstr (argv[0], "_seed_request") != NULL)
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Test seeding and requesting on multiple peers\n");
cur_test_run.name = "test-rps-seed-request";
cur_test_run.main_test = seed_req_cb;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
}
else if (strstr (argv[0], "_seed") != NULL)
cur_test_run.name = "test-rps-seed";
cur_test_run.main_test = seed_cb;
cur_test_run.eval_cb = no_eval;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
}
else if (strstr (argv[0], "_req_cancel") != NULL)
num_peers = 1;
cur_test_run.main_test = req_cancel_cb;
cur_test_run.eval_cb = no_eval;
- cur_test_run.have_churn = GNUNET_NO;
+ cur_test_run.have_churn = HAVE_NO_CHURN;
timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10);
}
cur_test_run.main_test = churn_test_cb;
cur_test_run.reply_handle = default_reply_handle;
cur_test_run.eval_cb = default_eval_cb;
- cur_test_run.have_churn = GNUNET_YES;
+ cur_test_run.have_churn = HAVE_CHURN;
+ cur_test_run.have_quick_quit = HAVE_NO_QUICK_QUIT;
timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10);
}
cur_test_run.eval_cb = profiler_eval;
cur_test_run.request_interval = 2;
cur_test_run.num_requests = 5;
- cur_test_run.have_churn = GNUNET_YES;
- timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 90);
+ cur_test_run.have_churn = HAVE_CHURN;
+ cur_test_run.have_quick_quit = HAVE_NO_QUICK_QUIT;
+ timeout = GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 300);
/* 'Clean' directory */
(void) GNUNET_DISK_directory_remove ("/tmp/rps/");