summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2023-11-14 14:52:27 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2023-11-22 18:23:50 +0200
commit38d09b462d90675d49b24e9a6e2612bbc2fb40e5 (patch)
treefe3ebd360071c2f141ad9225c23b8a0c88063707
parent9a37e24c2456103d146e0251765ae43df6f72f7e (diff)
scripts: Fix computation of the total number of tests
If a test scripts outputs a line that doesn't match the pass/fail/skipped criteria, the line is counted in the total number of tests run, but not attributed to any individual category. This results in a summary message such as 189 tests: 170 passed, 0 failed, 3 skipped Fix it by ignoring those lines. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
-rwxr-xr-xscripts/vsp-tests.sh16
1 files changed, 12 insertions, 4 deletions
diff --git a/scripts/vsp-tests.sh b/scripts/vsp-tests.sh
index e6cae04..7805f1b 100755
--- a/scripts/vsp-tests.sh
+++ b/scripts/vsp-tests.sh
@@ -29,10 +29,18 @@ run_test() {
local output=$(./$script 2>&1 | tee /proc/self/fd/2)
for line in $output ; do
- (echo "$line" | grep -q 'fail$') && num_fail=$((num_fail+1))
- (echo "$line" | grep -q 'pass$') && num_pass=$((num_pass+1))
- (echo "$line" | grep -q 'skipped$') && num_skip=$((num_skip+1))
- num_test=$((num_test+1))
+ local pass=0
+ local fail=0
+ local skipped=0
+
+ (echo "$line" | grep -q ': fail$') && fail=1
+ (echo "$line" | grep -q ': pass$') && pass=1
+ (echo "$line" | grep -q ': skipped$') && skipped=1
+
+ num_fail=$((num_fail+fail))
+ num_pass=$((num_pass+pass))
+ num_skipped=$((num_skipped+skipped))
+ num_test=$((num_test+pass+fail+skipped))
done
if [ $(ls *.bin 2>/dev/null | wc -l) != 0 ] ; then