diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2017-04-12 09:48:10 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2017-06-23 00:51:19 -0700 |
commit | ff85876719777d7e375368f73ec0c150a134f291 (patch) | |
tree | ac78df3efe0c1d353a95ac0a2c18aca3b08b9168 /cts/meta/dut.c | |
parent | 60800678ca1a7454a20ae2c270a4ea0bda34b9c0 (diff) | |
download | chrome-ec-ff85876719777d7e375368f73ec0c150a134f291.tar.gz |
eCTS: Check order and expectation of test results
This patch makes the framework verify not only the result but also
the execution order of the tests. It also allows each test to
specify expected return code and strings printed by TH and DUT.
The final test results depends on the return code and the expectation.
Therefore, the output now includes 'RESULT' column showing PASS or FAIL:
test name TH_RETURN_CODE DUT_RETURN_CODE TH_STR DUT_STR RESULT
test_task_switch SUCCESS SUCCESS 1 1 PASS
test_task_priority SUCCESS FAILURE 1 1 FAIL
test_stack_overflow DID_NOT_END DID_NOT_END 1 1 PASS
Additionally, this patch:
* Adds CTS_RC_DID_NOT_START and CTS_RC_DID_NOT_END to indicate whether
the test did start or end, respectively.
* Makes stack overflow test check whether stack overflow was detected
and reboot occurred
* Removes post_corruption_test and conflict test since now
the test results are stricly compared against expected results.
* Fixes gpylint errors.
BUG=none
BRANCH=none
TEST=Run gpio, meta, timer, interrupt, and cts/cts.py -m task
Change-Id: I3b7005236e705dcac0c8f4711b44c85ff9a4f676
Reviewed-on: https://chromium-review.googlesource.com/538878
Commit-Ready: Daisuke Nojiri <dnojiri@chromium.org>
Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'cts/meta/dut.c')
-rw-r--r-- | cts/meta/dut.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/cts/meta/dut.c b/cts/meta/dut.c index ad772bc10b..b80628449b 100644 --- a/cts/meta/dut.c +++ b/cts/meta/dut.c @@ -37,7 +37,7 @@ enum cts_rc fail_both_test(void) enum cts_rc bad_sync_and_success_test(void) { - return CTS_RC_BAD_SYNC; + return CTS_RC_SUCCESS; } enum cts_rc bad_sync_both_test(void) @@ -45,11 +45,6 @@ enum cts_rc bad_sync_both_test(void) return CTS_RC_BAD_SYNC; } -enum cts_rc bad_sync_failure_test(void) -{ - return CTS_RC_BAD_SYNC; -} - enum cts_rc hang_test(void) { while (1) { @@ -60,11 +55,6 @@ enum cts_rc hang_test(void) return CTS_RC_SUCCESS; } -enum cts_rc post_corruption_success(void) -{ - return CTS_RC_SUCCESS; -} - #include "cts_testlist.h" void cts_task(void) @@ -75,12 +65,13 @@ void cts_task(void) cflush(); for (i = 0; i < CTS_TEST_ID_COUNT; i++) { sync(); + CPRINTF("\n%s start\n", tests[i].name); result = tests[i].run(); - CPRINTF("\n%s %d\n", tests[i].name, result); + CPRINTF("\n%s end %d\n", tests[i].name, result); cflush(); } - CPRINTS("GPIO test suite finished"); + CPRINTS("Meta test finished"); cflush(); while (1) { watchdog_reload(); |