From 1dc91bd8b96563c816e701dfdebcf33040555a6b Mon Sep 17 00:00:00 2001 From: Kimplul Date: Sun, 12 Oct 2025 21:44:47 +0300 Subject: report errors on failure --- scripts/coverage | 4 ++-- scripts/run-test | 13 +++++++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) (limited to 'scripts') diff --git a/scripts/coverage b/scripts/coverage index 1c4a279..6afc069 100755 --- a/scripts/coverage +++ b/scripts/coverage @@ -1,4 +1,5 @@ #!/bin/sh +set -eu # build covsrv binary make -C deps/covsrv @@ -13,7 +14,7 @@ cleanup() { # kill server program even if user interrupted us or something else exceptional # happened -trap interrupt INT HUP TERM +trap interrupt INT HUP TERM QUIT EXIT interrupt () { cleanup exit 1 @@ -30,5 +31,4 @@ mkdir -p coverage lcov --capture --directory . --out coverage/covsrv.info genhtml coverage/covsrv.info --out coverage -cleanup exit 0 diff --git a/scripts/run-test b/scripts/run-test index 05ddfe1..017562e 100755 --- a/scripts/run-test +++ b/scripts/run-test @@ -5,11 +5,18 @@ NAME=$(basename "$TEST") mkdir -p "reports/$NAME" +try_vg() { + if which -s valgrind; then + valgrind -q --leak-check=full --error-exitcode=1 "$1" + else + eval "$1" + fi +} + I=0 while :; do # if no error happened, consider it a pass - if valgrind -q --leak-check=full --error-exitcode=1 \ - "./$TEST" > "reports/$NAME/run-$I" 2>&1 + if try_vg "./${TEST}" > "reports/$NAME/run-$I" 2>&1 then echo "$NAME: PASSED" exit 0 @@ -17,6 +24,7 @@ while :; do if grep 'loss record' "reports/$NAME/run-$I" >/dev/null; then echo "$NAME: MEM FAILED" + cat "reports/$NAME/run-$I" exit 1 fi @@ -27,5 +35,6 @@ while :; do fi echo "$NAME: FAILED" + cat "reports/$NAME/run-$I" exit 1 done -- cgit v1.2.3