diff options
author | Simon McVittie <smcv@collabora.com> | 2021-04-18 12:45:24 +0100 |
---|---|---|
committer | Simon McVittie <smcv@collabora.com> | 2021-06-18 09:49:53 +0100 |
commit | d7cdde5d3445e004c783f86a985d58725f3e6646 (patch) | |
tree | a125727c38f564c372532f197b4d010be95e10f8 /tests | |
parent | c934fc8f9904d66c443d784ec3f93209b7b9f1b0 (diff) | |
download | ostree-d7cdde5d3445e004c783f86a985d58725f3e6646.tar.gz |
libtest-core: On failure, make it clearer what has happened
If we fail as a result of `set -x`, It's often not completely obvious
which command failed or how. Use a trap on ERR to show the command that
failed, and its exit status.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/kolainst/libtest-core.sh | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/kolainst/libtest-core.sh b/tests/kolainst/libtest-core.sh index 471a63f0..7179a408 100644 --- a/tests/kolainst/libtest-core.sh +++ b/tests/kolainst/libtest-core.sh @@ -179,3 +179,11 @@ skip() { echo "1..0 # SKIP" "$@" exit 0 } + +report_err () { + local exit_status="$?" + { { local BASH_XTRACEFD=3; } 2> /dev/null + echo "Unexpected nonzero exit status $exit_status while running: $BASH_COMMAND" >&2 + } 3> /dev/null +} +trap report_err ERR |