mirror of https://github.com/ARMmbed/mbed-os.git
Harness: Add empty test case detection.
parent
2bbf725bcc
commit
e2a5d97f77
|
@ -70,6 +70,11 @@ Case::get_description() const {
|
|||
return description;
|
||||
}
|
||||
|
||||
bool
|
||||
Case::is_empty() const {
|
||||
return !(handler || control_flow_handler || set_up_handler || tear_down_handler);
|
||||
}
|
||||
|
||||
|
||||
AsyncCase::AsyncCase(const char *description,
|
||||
const case_handler_t handler,
|
||||
|
|
|
@ -31,6 +31,8 @@ const char* failureToString(failure_t failure)
|
|||
return "Unspecified Failure";
|
||||
case FAILURE_CASES:
|
||||
return "Test Cases Failed";
|
||||
case FAILURE_EMPTY_CASE:
|
||||
return "Test Case is Empty";
|
||||
case FAILURE_SETUP:
|
||||
return "Setup Failed";
|
||||
case FAILURE_TEARDOWN:
|
||||
|
|
|
@ -165,6 +165,12 @@ void Harness::run_next_case()
|
|||
handlers.case_tear_down = defaults.get_handler(case_current->tear_down_handler);
|
||||
handlers.case_failure = defaults.get_handler(case_current->failure_handler);
|
||||
|
||||
if (case_current->is_empty()) {
|
||||
raise_failure(FAILURE_EMPTY_CASE);
|
||||
schedule_next_case();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!case_failed && !case_passed) {
|
||||
size_t index = test_index_of_case++;
|
||||
if (handlers.case_set_up && (handlers.case_set_up(case_current, index) != STATUS_CONTINUE)) {
|
||||
|
|
Loading…
Reference in New Issue