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:
@@ -162,3 +162,11 @@ skip() {
|
||||
extract_child_pid() {
|
||||
grep child-pid "$1" | sed "s/^.*: \([0-9]*\).*/\1/"
|
||||
}
|
||||
|
||||
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
|
||||
|
Reference in New Issue
Block a user