selftests: timers: Fix run_destructive_tests target to handle skipped tests
authorShuah Khan <shuahkh@osg.samsung.com>
Thu, 17 Aug 2017 22:34:43 +0000 (16:34 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Sep 2017 21:20:53 +0000 (14:20 -0700)
commit df9c011c0a23cf1399c01f896cd359d932ab49b5 upstream.

When a test exits with skip exit code of 4, "make run_destructive_tests"
halts testing. Fix run_destructive_tests target to handle error exit codes.

Reported-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tools/testing/selftests/timers/Makefile

index a9b86133b9b3986ff3617e4e9e0a6c45f1ee16bb..dfa916e651fbc0f86fc5997fe409bacfbb0f7396 100644 (file)
@@ -14,20 +14,20 @@ TEST_GEN_PROGS_EXTENDED = alarmtimer-suspend valid-adjtimex adjtick change_skew
 
 include ../lib.mk
 
+define RUN_DESTRUCTIVE_TESTS
+       @for TEST in $(TEST_GEN_PROGS_EXTENDED); do \
+               BASENAME_TEST=`basename $$TEST`;        \
+               if [ ! -x $$BASENAME_TEST ]; then       \
+                       echo "selftests: Warning: file $$BASENAME_TEST is not executable, correct this.";\
+                       echo "selftests: $$BASENAME_TEST [FAIL]"; \
+               else                                    \
+                       cd `dirname $$TEST`; (./$$BASENAME_TEST && echo "selftests: $$BASENAME_TEST [PASS]") || echo "selftests:  $$BASENAME_TEST [FAIL]"; cd -;\
+               fi;                                     \
+       done;
+endef
+
 # these tests require escalated privileges
 # and may modify the system time or trigger
 # other behavior like suspend
 run_destructive_tests: run_tests
-       ./alarmtimer-suspend
-       ./valid-adjtimex
-       ./adjtick
-       ./change_skew
-       ./skew_consistency
-       ./clocksource-switch
-       ./freq-step
-       ./leap-a-day -s -i 10
-       ./leapcrash
-       ./set-tz
-       ./set-tai
-       ./set-2038
-
+       $(RUN_DESTRUCTIVE_TESTS)