diff options
author | Michael Ellerman <mpe@ellerman.id.au> | 2015-03-11 05:05:59 +0100 |
---|---|---|
committer | Shuah Khan <shuahkh@osg.samsung.com> | 2015-03-13 22:13:40 +0100 |
commit | 5e29a9105b1a0da86eff0ad6ae015997b49d4d1d (patch) | |
tree | 8c913c799dc3d6251efec0e681ef738ec38a3f4e /tools/testing/selftests/lib.mk | |
parent | MAINTAINERS: Add selftests/timers to the timekeeping maintainance list (diff) | |
download | linux-5e29a9105b1a0da86eff0ad6ae015997b49d4d1d.tar.xz linux-5e29a9105b1a0da86eff0ad6ae015997b49d4d1d.zip |
selftests: Introduce minimal shared logic for running tests
This adds a Make include file which most selftests can then include to
get the run_tests logic.
On its own this has the advantage of some reduction in repetition, and
also means the pass/fail message is defined in fewer places.
However the key advantage is it will allow us to implement install very
simply in a subsequent patch.
The default implementation just executes each program in $(TEST_PROGS).
We use a variable to hold the default implementation of $(RUN_TESTS)
because that gives us a clean way to override it if necessary, ie. using
override. The mount, memory-hotplug and mqueue tests use that to provide
a different implementation.
Tests are not run via /bin/bash, so if they are scripts they must be
executable, we add a+x to several.
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
Diffstat (limited to 'tools/testing/selftests/lib.mk')
-rw-r--r-- | tools/testing/selftests/lib.mk | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk new file mode 100644 index 000000000000..b30c5a49cb61 --- /dev/null +++ b/tools/testing/selftests/lib.mk @@ -0,0 +1,10 @@ +define RUN_TESTS + @for TEST in $(TEST_PROGS); do \ + (./$$TEST && echo "selftests: $$TEST [PASS]") || echo "selftests: $$TEST [FAIL]"; \ + done; +endef + +run_tests: all + $(RUN_TESTS) + +.PHONY: run_tests all clean |