From: Ian Jackson Date: Wed, 10 Jun 2015 17:25:12 +0000 (+0100) Subject: Test suite: Move most of mustfail into t-expect-fail X-Git-Tag: debian/0.30~98 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=dgit.git;a=commitdiff_plain;h=5d8e32854c1d89e337bc606d423634a667f9b0ff;hp=609f108165197b1d7a55a4908a321bad40a86442 Test suite: Move most of mustfail into t-expect-fail --- diff --git a/tests/lib b/tests/lib index 332bef24..c91020bc 100644 --- a/tests/lib +++ b/tests/lib @@ -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 () { diff --git a/tests/tests/drs-push-rejects b/tests/tests/drs-push-rejects index 640aeae6..13567c3f 100755 --- a/tests/tests/drs-push-rejects +++ b/tests/tests/drs-push-rejects @@ -11,20 +11,12 @@ t-worktree drs cd $p mustfail () { - local wantmsg="$1"; shift + local mpat="$1"; shift t-reporefs pre-push - set +o pipefail + + t-expect-fail "$mpat" \ git push origin "$@" 2>&1 |tee $tmp/mustfail.txt - ps="${PIPESTATUS[*]}" - set -o pipefail - case $ps in - "0 0") fail "push unexpectedly succeeded (instead of: $wantmsg)" ;; - *" 0") ;; - *) fail "tee failed" ;; - esac - if ! fgrep "$wantmsg" $tmp/mustfail.txt >/dev/null; then - fail "error message not found" - fi + t-reporefs post-push diff $tmp/show-refs.{pre,post}-push }