diff options
Diffstat (limited to 'tests/lib')
-rw-r--r-- | tests/lib | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -59,10 +59,17 @@ t-expect-fail () { set +o pipefail LC_MESSAGES=C "$@" 2>&1 | tee $tmp/t.output - local gotstatus=${PIPESTATUS[0]} + local ps="${PIPESTATUS[*]}" set -o pipefail - test $gotstatus != 0 - $grepper -e "$mpat" $tmp/t.output ||false + + case $ps in + "0 0") fail "command unexpectedly succeeded (instead of: $mpat)" ;; + *" 0") ;; + *) fail "tee failed" ;; + esac + + $grepper -e "$mpat" $tmp/t.output || + fail "error message not found" } t-reporefs () { |