X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest%2Ftest.c;h=f27a56e03390b4de41566939e00073abeb2c9897;hb=5364a1ce30dfbf2a8acc41bb64cae4cdfeff4735;hp=1c91ed675c42972787bbd0fa49b4f580b0ba8e16;hpb=6d27d8c0548ea9832f3bc4dc50a9e2ab2e05f00c;p=dpdk.git diff --git a/app/test/test.c b/app/test/test.c index 1c91ed675c..f27a56e033 100644 --- a/app/test/test.c +++ b/app/test/test.c @@ -12,7 +12,7 @@ #include #include -#ifdef RTE_LIBRTE_CMDLINE +#ifdef RTE_LIB_CMDLINE #include #include #include @@ -25,12 +25,12 @@ extern cmdline_parse_ctx_t main_ctx[]; #include #include #include -#ifdef RTE_LIBRTE_TIMER +#ifdef RTE_LIB_TIMER #include #endif #include "test.h" -#ifdef RTE_LIBRTE_PDUMP +#ifdef RTE_LIB_PDUMP #include "test_pdump.h" #endif @@ -52,11 +52,13 @@ do_recursive_call(void) int (*action_fn)(void); } actions[] = { { "run_secondary_instances", test_mp_secondary }, -#ifdef RTE_LIBRTE_PDUMP +#ifdef RTE_LIB_PDUMP +#ifdef RTE_NET_RING { "run_pdump_server_tests", test_pdump }, +#endif #endif { "test_missing_c_flag", no_action }, - { "test_master_lcore_flag", no_action }, + { "test_main_lcore_flag", no_action }, { "test_invalid_n_flag", no_action }, { "test_no_hpet_flag", no_action }, { "test_whitelist_flag", no_action }, @@ -67,11 +69,14 @@ do_recursive_call(void) { "test_memory_flags", no_action }, { "test_file_prefix", no_action }, { "test_no_huge_flag", no_action }, +#ifdef RTE_LIB_TIMER + { "timer_secondary_spawn_wait", test_timer_secondary }, +#endif }; if (recursive_call == NULL) return -1; - for (i = 0; i < sizeof(actions)/sizeof(actions[0]); i++) { + for (i = 0; i < RTE_DIM(actions); i++) { if (strcmp(actions[i].env_var, recursive_call) == 0) return (actions[i].action_fn)(); } @@ -86,7 +91,7 @@ int last_test_result; int main(int argc, char **argv) { -#ifdef RTE_LIBRTE_CMDLINE +#ifdef RTE_LIB_CMDLINE struct cmdline *cl; #endif char *extra_args; @@ -129,8 +134,11 @@ main(int argc, char **argv) goto out; } -#ifdef RTE_LIBRTE_TIMER - rte_timer_subsystem_init(); +#ifdef RTE_LIB_TIMER + if (rte_timer_subsystem_init() < 0) { + ret = -1; + goto out; + } #endif if (commands_init() < 0) { @@ -155,7 +163,7 @@ main(int argc, char **argv) "HPET is not enabled, using TSC as default timer\n"); -#ifdef RTE_LIBRTE_CMDLINE +#ifdef RTE_LIB_CMDLINE cl = cmdline_stdin_new(main_ctx, "RTE>>"); if (cl == NULL) { ret = -1; @@ -183,6 +191,9 @@ main(int argc, char **argv) ret = 0; out: +#ifdef RTE_LIB_TIMER + rte_timer_subsystem_finalize(); +#endif rte_eal_cleanup(); return ret; } @@ -201,14 +212,16 @@ unit_test_suite_runner(struct unit_test_suite *suite) printf(" + Test Suite : %s\n", suite->suite_name); } - if (suite->setup) - if (suite->setup() != 0) { + if (suite->setup) { + test_success = suite->setup(); + if (test_success != 0) { /* - * setup failed, so count all enabled tests and mark - * them as failed + * setup did not pass, so count all enabled tests and + * mark them as failed/skipped */ while (suite->unit_test_cases[total].testcase) { - if (!suite->unit_test_cases[total].enabled) + if (!suite->unit_test_cases[total].enabled || + test_success == TEST_SKIPPED) skipped++; else failed++; @@ -216,6 +229,7 @@ unit_test_suite_runner(struct unit_test_suite *suite) } goto suite_summary; } + } printf(" + ------------------------------------------------------- +\n"); @@ -239,6 +253,8 @@ unit_test_suite_runner(struct unit_test_suite *suite) test_success = suite->unit_test_cases[total].testcase(); if (test_success == TEST_SUCCESS) succeeded++; + else if (test_success == TEST_SKIPPED) + skipped++; else if (test_success == -ENOTSUP) unsupported++; else @@ -255,6 +271,8 @@ unit_test_suite_runner(struct unit_test_suite *suite) if (test_success == TEST_SUCCESS) status = "succeeded"; + else if (test_success == TEST_SKIPPED) + status = "skipped"; else if (test_success == -ENOTSUP) status = "unsupported"; else @@ -286,7 +304,8 @@ suite_summary: last_test_result = failed; if (failed) - return -1; - - return 0; + return TEST_FAILED; + if (total == skipped) + return TEST_SKIPPED; + return TEST_SUCCESS; }