Skip to content

Commit

Permalink
selftests: Add plan line and fix result line syntax
Browse files Browse the repository at this point in the history
The TAP version 13 spec requires a "plan" line, which has been missing.
Since we always know how many tests we're going to run, emit the count on
the plan line. This also fixes the result lines to remove the "1.." prefix
which is against spec, and to mark skips with the correct "# SKIP" suffix.

Signed-off-by: Kees Cook <[email protected]>
Signed-off-by: Shuah Khan <[email protected]>
  • Loading branch information
kees authored and shuahkh committed Apr 25, 2019
1 parent bf66078 commit b0df366
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 6 deletions.
4 changes: 2 additions & 2 deletions tools/testing/selftests/kselftest.h
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ static inline void ksft_test_result_skip(const char *msg, ...)
ksft_cnt.ksft_xskip++;

va_start(args, msg);
printf("ok %d # skip ", ksft_test_num());
printf("not ok %d # SKIP ", ksft_test_num());
vprintf(msg, args);
va_end(args);
}
Expand Down Expand Up @@ -172,7 +172,7 @@ static inline int ksft_exit_skip(const char *msg, ...)
va_list args;

va_start(args, msg);
printf("1..%d # Skipped: ", ksft_test_num());
printf("not ok %d # SKIP ", ksft_test_num());
vprintf(msg, args);
va_end(args);
} else {
Expand Down
10 changes: 6 additions & 4 deletions tools/testing/selftests/kselftest/runner.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,15 @@ run_one()
echo "========================================"
if [ ! -x "$TEST" ]; then
echo "$TEST_HDR_MSG: Warning: file $TEST is not executable, correct this."
echo "not ok 1..$test_num $TEST_HDR_MSG [FAIL]"
echo "not ok $test_num $TEST_HDR_MSG"
else
cd `dirname $TEST` > /dev/null
(./$BASENAME_TEST >> "$logfile" 2>&1 &&
echo "ok 1..$test_num $TEST_HDR_MSG [PASS]") ||
echo "ok $test_num $TEST_HDR_MSG") ||
(if [ $? -eq $skip_rc ]; then \
echo "not ok 1..$test_num $TEST_HDR_MSG [SKIP]"
echo "not ok $test_num $TEST_HDR_MSG # SKIP"
else
echo "not ok 1..$test_num $TEST_HDR_MSG [FAIL]"
echo "not ok $test_num $TEST_HDR_MSG"
fi)
cd - >/dev/null
fi
Expand All @@ -39,6 +39,8 @@ run_many()
echo "TAP version 13"
DIR=$(basename "$PWD")
test_num=0
total=$(echo "$@" | wc -w)
echo "1..$total"
for TEST in "$@"; do
BASENAME_TEST=$(basename $TEST)
test_num=$(( test_num + 1 ))
Expand Down

0 comments on commit b0df366

Please sign in to comment.