diff options
author | Simon McVittie <smcv@debian.org> | 2019-08-24 15:37:29 +0100 |
---|---|---|
committer | Georges Basile Stavracas Neto <georges.stavracas@gmail.com> | 2020-09-28 13:58:19 +0000 |
commit | 8ae641aa248fa36c626459fc6292e0615ad3b7ca (patch) | |
tree | 4971e61da7cc6082df4bebecc837ea781e3a2992 /cogl | |
parent | 9b9b912765f49553849e8c8aca7d2a75692ca9cc (diff) | |
download | mutter-8ae641aa248fa36c626459fc6292e0615ad3b7ca.tar.gz |
cogl tests: Show the actual output from tests if VERBOSE is set
Writing tests' output to a log file makes them difficult to debug when
the test might be running on an autobuilder or CI system where only
stdout/stderr are recorded. This is particularly troublesome if a
failure is only reproducible on a particular autobuilder.
Recent Automake versions have the convention that detailed output from
failing tests is written to stdout/stderr, not just to log files, when
the VERBOSE environment variable is set; borrow that convention as a
trigger for producing detailed test output.
This was originally cogl!14, but applies equally to mutter's fork of cogl.
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1273
Signed-off-by: Simon McVittie <smcv@debian.org>
Diffstat (limited to 'cogl')
-rwxr-xr-x | cogl/tests/run-tests.sh | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/cogl/tests/run-tests.sh b/cogl/tests/run-tests.sh index 825dd1251..ce7580fbe 100755 --- a/cogl/tests/run-tests.sh +++ b/cogl/tests/run-tests.sh @@ -1,5 +1,7 @@ #!/usr/bin/env bash +set -o pipefail + if test -z "$G_DEBUG"; then G_DEBUG=fatal-warnings else @@ -69,7 +71,12 @@ get_status() run_test() { - $("$TEST_BINARY" "$1" &> "$LOG") + if [ -n "${VERBOSE-}" ]; then + echo "running $TEST_BINARY $1:" + $TEST_BINARY $1 2>&1 | tee "$LOG" + else + $($TEST_BINARY $1 &> "$LOG") + fi TMP=$? var_name=$2_result eval "$var_name=$TMP" |