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>
This commit is contained in:
Simon McVittie committed 2021-06-18 09:49:53 +01:00
1 parent c934fc8f99
commit d7cdde5d34
1 file changed
+8
+8
View File
@@ -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