diff options
author | Sachin Sant <sachinp@linux.vnet.ibm.com> | 2017-02-26 11:38:39 +0530 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2017-03-03 11:24:50 +1100 |
commit | a6d8a21596df041f36f4c2ccc260c459e3e851f1 (patch) | |
tree | c0e5c498611999ceefc9c7e18c54a87c51f55814 /tools/testing/selftests/powerpc | |
parent | 424f8acd328a111319ae30bf384e5dfb9bc8f8cb (diff) | |
download | blackbird-obmc-linux-a6d8a21596df041f36f4c2ccc260c459e3e851f1.tar.gz blackbird-obmc-linux-a6d8a21596df041f36f4c2ccc260c459e3e851f1.zip |
selftest/powerpc: Fix false failures for skipped tests
Tests under alignment subdirectory are skipped when executed on previous
generation hardware, but harness still marks them as failed.
test: test_copy_unaligned
tags: git_version:unknown
[SKIP] Test skipped on line 26
skip: test_copy_unaligned
selftests: copy_unaligned [FAIL]
The MAGIC_SKIP_RETURN_VALUE value assigned to rc variable is retained till
the program exit which causes the test to be marked as failed.
This patch resets the value before returning to the main() routine.
With this patch the test o/p is as follows:
test: test_copy_unaligned
tags: git_version:unknown
[SKIP] Test skipped on line 26
skip: test_copy_unaligned
selftests: copy_unaligned [PASS]
Signed-off-by: Sachin Sant <sachinp@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'tools/testing/selftests/powerpc')
-rw-r--r-- | tools/testing/selftests/powerpc/harness.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/testing/selftests/powerpc/harness.c b/tools/testing/selftests/powerpc/harness.c index 248a820048df..66d31de60b9a 100644 --- a/tools/testing/selftests/powerpc/harness.c +++ b/tools/testing/selftests/powerpc/harness.c @@ -114,9 +114,11 @@ int test_harness(int (test_function)(void), char *name) rc = run_test(test_function, name); - if (rc == MAGIC_SKIP_RETURN_VALUE) + if (rc == MAGIC_SKIP_RETURN_VALUE) { test_skip(name); - else + /* so that skipped test is not marked as failed */ + rc = 0; + } else test_finish(name, rc); return rc; |