diff options
author | Ævar Arnfjörð Bjarmason <avarab@gmail.com> | 2010-10-03 23:59:59 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-10-07 00:26:11 +0400 |
commit | 892e6f7ea61e39d8504e3f227ee3ae874521f05c (patch) | |
tree | 4948f14e9ba239820ce5b6c2d92a69ec80872716 /t/t6020-merge-df.sh | |
parent | 6db2103f92cf6c5caeeddec0bfd5f57f94e81d81 (diff) |
test-lib: make test_expect_code a test command
Change test_expect_code to be a normal test command instead of a
top-level command.
As a top-level command it would fail in cases like:
test_expect_code 1 'phoney' '
foo && bar && (exit 1)
'
Here the test might incorrectly succeed if "foo" or "bar" happened to
fail with exit status 1. Instead we now do:
test_expect_success 'phoney' '
foo && bar && test_expect_code 1 "(exit 1)"
'
Which will only succeed if "foo" and "bar" return status 0, and "(exit
1)" returns status 1. Note that test_expect_code has been made slightly
noisier, as it reports the exit code it receives even upon success.
Some test code in t0000-basic.sh relied on the old semantics of
test_expect_code to test the test_when_finished command. I've
converted that code to use an external test similar to the TODO test I
added in v1.7.3-rc0~2^2~3.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Acked-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t6020-merge-df.sh')
-rwxr-xr-x | t/t6020-merge-df.sh | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/t/t6020-merge-df.sh b/t/t6020-merge-df.sh index 490d397114..5d91d056d2 100755 --- a/t/t6020-merge-df.sh +++ b/t/t6020-merge-df.sh @@ -20,7 +20,9 @@ echo "file dir" > dir && git add dir && git commit -m "File: dir"' -test_expect_code 1 'Merge with d/f conflicts' 'git merge "merge msg" B master' +test_expect_success 'Merge with d/f conflicts' ' + test_expect_code 1 git merge "merge msg" B master +' test_expect_success 'F/D conflict' ' git reset --hard && |