From: Dan Fandrich Date: Sun, 29 Aug 2010 02:47:03 +0000 (+0200) Subject: testsuite: show the number of failures after a test run X-Git-Tag: 1_18_0~303 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=140ac91fe154c9a1bb33cba38380c3cc81e1cf15;p=oweals%2Fbusybox.git testsuite: show the number of failures after a test run Signed-off-by: Dan Fandrich Signed-off-by: Denys Vlasenko --- diff --git a/testsuite/bunzip2.tests b/testsuite/bunzip2.tests index 734acbb75..827aee867 100755 --- a/testsuite/bunzip2.tests +++ b/testsuite/bunzip2.tests @@ -1,6 +1,8 @@ #!/bin/sh # Used by both gunzip and bunzip2 tests +FAILCOUNT=0 + if test "${0##*/}" = "gunzip.tests"; then unpack=gunzip ext=gz @@ -473,6 +475,7 @@ check() { echo "PASS: $1" else echo "FAIL: $1" + FAILCOUNT=$((FAILCOUNT + 1)) fi } @@ -520,5 +523,8 @@ if test "${0##*/}" = "bunzip2.tests"; then echo "PASS: $unpack: test bz2 file" else echo "FAIL: $unpack: test bz2 file" + FAILCOUNT=$((FAILCOUNT + 1)) fi fi + +exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) diff --git a/testsuite/bzcat.tests b/testsuite/bzcat.tests index 78d74f229..5b4f3f4b3 100755 --- a/testsuite/bzcat.tests +++ b/testsuite/bzcat.tests @@ -1,5 +1,7 @@ #!/bin/sh +FAILCOUNT=0 + ext=bz2 bb="busybox " @@ -35,6 +37,7 @@ check() { echo "PASS: $1" else echo "FAIL: $1" + FAILCOUNT=$((FAILCOUNT + 1)) fi } @@ -47,3 +50,5 @@ prep; check "bzcat: dont delete src" "${bb}bzcat t2.bz2; test -f t2.bz2 && echo ) rm -rf testdir + +exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) diff --git a/testsuite/readlink.tests b/testsuite/readlink.tests index 73163b077..c7fc8adf0 100755 --- a/testsuite/readlink.tests +++ b/testsuite/readlink.tests @@ -29,3 +29,5 @@ testing "readlink -f on a wierd dir" "readlink -f $TESTDIR/../$TESTFILE" "$PWD/$ # clean up rm -r "$TESTLINK" "$TESTDIR" + +exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) diff --git a/testsuite/runtest b/testsuite/runtest index c300233cd..9a4fccbbf 100755 --- a/testsuite/runtest +++ b/testsuite/runtest @@ -4,6 +4,8 @@ . ./testing.sh +total_failed=0 + # Run one old-style test. # Tests are stored in applet/testcase shell scripts. # They are run using "sh -x -e applet/testcase". @@ -73,6 +75,7 @@ run_oldstyle_applet_tests() *.r[0-9]*) continue ;; # svn-produced junk esac run_applet_testcase "$applet" "$testcase" || status=1 + total_failed=$((total_failed + status)) done return $status } @@ -150,7 +153,10 @@ for applet in $applets; do fi # echo "Running test $tsdir/$applet.tests" PATH="$LINKSDIR:$tsdir:$bindir:$PATH" \ - "$tsdir/$applet.tests" || status=1 + "$tsdir/$applet.tests" + rc=$? + total_failed=$((total_failed + rc)) + test $rc -ne 0 && status=1 fi done @@ -158,6 +164,6 @@ done #rm -rf "$LINKSDIR" if [ $status -ne 0 ] && [ x"$VERBOSE" = x ]; then - echo "Failures detected, running with -v (verbose) will give more info" + echo "$total_failed failure(s) detected; running with -v (verbose) will give more info" fi exit $status