Also replace failing code with similar clean-up to set the appropriate state the test needs. Signed-off-by: Elijah Newren <newren@xxxxxxxxx> --- May be worth considering an alternative; from http://thread.gmane.org/gmane.comp.version-control.git/157827/focus=157896: >On Sun, Oct 3, 2010 at 8:28 AM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: >>> test_expect_success \ >>> 'Test that git rm --cached foo fails if the index matches neither the file nor HEAD' ' >>> - echo content > foo >>> - git add foo >>> - git commit -m foo >>> + git checkout HEAD -- foo && >> [...] >> >> Why not >> - echo content > foo >> - git add foo >> - git commit -m foo >> + echo content > foo && >> + git add foo && >> + git commit --allow-empty -m foo && >> ? > > What advantage does using these three commands have over 'git checkout > HEAD -- foo'? Perhaps I'm missing something, but I don't see it. > It's three commands to one, and the tests don't depend on foo starting > with contents of 'content'; just that foo matches HEAD to start. Is there an advantage of the three-command version I'm just missing, or do people just prefer it? t/t3600-rm.sh | 38 +++++++++++++++++--------------------- 1 files changed, 17 insertions(+), 21 deletions(-) diff --git a/t/t3600-rm.sh b/t/t3600-rm.sh index b26cabd..9660ae0 100755 --- a/t/t3600-rm.sh +++ b/t/t3600-rm.sh @@ -38,37 +38,33 @@ test_expect_success \ test_expect_success \ 'Test that git rm --cached foo succeeds if the index matches the file' \ - 'echo content > foo - git add foo + 'echo content > foo && + git add foo && git rm --cached foo' test_expect_success \ 'Test that git rm --cached foo succeeds if the index matches the file' \ - 'echo content > foo - git add foo - git commit -m foo - echo "other content" > foo + 'echo content > foo && + git add foo && + git commit -m foo && + echo "other content" > foo && git rm --cached foo' test_expect_success \ 'Test that git rm --cached foo fails if the index matches neither the file nor HEAD' ' - echo content > foo - git add foo - git commit -m foo - echo "other content" > foo - git add foo - echo "yet another content" > foo + git checkout HEAD -- foo && + echo "other content" > foo && + git add foo && + echo "yet another content" > foo && test_must_fail git rm --cached foo ' test_expect_success \ 'Test that git rm --cached -f foo works in case where --cached only did not' \ - 'echo content > foo - git add foo - git commit -m foo - echo "other content" > foo - git add foo - echo "yet another content" > foo + 'git checkout HEAD -- foo && + echo "other content" > foo && + git add foo && + echo "yet another content" > foo && git rm --cached -f foo' test_expect_success \ @@ -170,7 +166,7 @@ test_expect_success 'but with -f it should work.' ' git rm -f foo baz && test ! -f foo && test ! -f baz && - test_must_fail git ls-files --error-unmatch foo + test_must_fail git ls-files --error-unmatch foo && test_must_fail git ls-files --error-unmatch baz ' @@ -183,7 +179,7 @@ test_expect_success 'refuse to remove cached empty file with modifications' ' test_expect_success 'remove intent-to-add file without --force' ' echo content >intent-to-add && - git add -N intent-to-add + git add -N intent-to-add && git rm --cached intent-to-add ' @@ -201,7 +197,7 @@ test_expect_success 'Recursive without -r fails' ' ' test_expect_success 'Recursive with -r but dirty' ' - echo qfwfq >>frotz/nitfol + echo qfwfq >>frotz/nitfol && test_must_fail git rm -r frotz && test -d frotz && test -f frotz/nitfol -- 1.7.3.1.66.gab790 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html