test: register test as failed if setup failed

If test set up couldn't be completed, the test was previously
shown as succeeding, even though setup failed. Fix this to report
test as failed, and count all tests that should've been executed,
as failed as well.

Fixes: ffac67b1f71b ("app/test: new assert macros and test suite runner")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
This commit is contained in:
Anatoly Burakov 2017-12-22 10:21:51 +00:00 committed by Thomas Monjalon
parent d48a189c97
commit 69a9507011

View File

@ -149,8 +149,20 @@ unit_test_suite_runner(struct unit_test_suite *suite)
}
if (suite->setup)
if (suite->setup() != 0)
if (suite->setup() != 0) {
/*
* setup failed, so count all enabled tests and mark
* them as failed
*/
while (suite->unit_test_cases[total].testcase) {
if (!suite->unit_test_cases[total].enabled)
skipped++;
else
failed++;
total++;
}
goto suite_summary;
}
printf(" + ------------------------------------------------------- +\n");