From: Elijah Newren <newren@gmail.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, avarab@gmail.com, jrnieder@gmail.com,
Elijah Newren <newren@gmail.com>
Subject: [PATCHv6 07/16] t3600 (rm): add lots of missing &&
Date: Sun, 3 Oct 2010 14:00:05 -0600 [thread overview]
Message-ID: <1286136014-7728-8-git-send-email-newren@gmail.com> (raw)
In-Reply-To: <1286136014-7728-1-git-send-email-newren@gmail.com>
Also replace failing code with similar clean-up to set the appropriate
state the test needs.
Signed-off-by: Elijah Newren <newren@gmail.com>
---
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@gmail.com> 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
next prev parent reply other threads:[~2010-10-03 19:59 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-03 19:59 [PATCHv6 00/16] Add missing &&'s in the testsuite Elijah Newren
2010-10-03 19:59 ` [PATCHv6 01/16] test-lib: make test_expect_code a test command Elijah Newren
2010-10-04 0:54 ` Junio C Hamano
2010-10-04 3:48 ` Ævar Arnfjörð Bjarmason
2010-10-04 3:50 ` Jonathan Nieder
2010-10-04 4:04 ` Ævar Arnfjörð Bjarmason
2010-10-04 4:06 ` Jonathan Nieder
2010-10-04 6:57 ` Ævar Arnfjörð Bjarmason
2010-10-04 9:28 ` Jonathan Nieder
2010-10-04 3:37 ` Ævar Arnfjörð Bjarmason
2010-10-03 20:00 ` [PATCHv6 02/16] t3020 (ls-files-error-unmatch): remove stray '1' from end of file Elijah Newren
2010-10-04 0:56 ` Junio C Hamano
2010-10-03 20:00 ` [PATCHv6 03/16] t4017 (diff-retval): replace manual exit code check with test_expect_code Elijah Newren
2010-10-03 20:00 ` [PATCHv6 04/16] t100[12] (read-tree-m-2way, read_tree_m_u_2way): add missing && Elijah Newren
2010-10-03 20:00 ` [PATCHv6 05/16] t4002 (diff-basic): use test_might_fail for commands that might fail Elijah Newren
2010-10-03 20:00 ` [PATCHv6 06/16] t4202 (log): Replace '<git-command> || :' with test_might_fail Elijah Newren
2010-10-03 20:00 ` Elijah Newren [this message]
2010-10-03 20:56 ` [PATCHv6 07/16] t3600 (rm): add lots of missing && Jonathan Nieder
2010-10-03 23:32 ` Junio C Hamano
2010-10-03 20:00 ` [PATCHv6 08/16] t4019 (diff-wserror): " Elijah Newren
2010-10-03 20:00 ` [PATCHv6 09/16] t4026 (color): remove unneeded and unchained command Elijah Newren
2010-10-03 20:00 ` [PATCHv6 10/16] t5602 (clone-remote-exec): add missing && Elijah Newren
2010-10-03 20:00 ` [PATCHv6 11/16] t6016 (rev-list-graph-simplify-history): " Elijah Newren
2010-10-03 20:00 ` [PATCHv6 12/16] t7001 (mv): " Elijah Newren
2010-10-03 20:00 ` [PATCHv6 13/16] t7601 (merge-pull-config): " Elijah Newren
2010-10-03 20:00 ` [PATCHv6 14/16] t7800 (difftool): " Elijah Newren
2010-10-03 20:00 ` [PATCHv6 15/16] Add missing &&'s throughout the testsuite Elijah Newren
2010-10-03 20:59 ` Jonathan Nieder
2010-10-03 21:17 ` Jonathan Nieder
2010-10-31 1:46 ` [PATCH en/cascade-tests] tests: add missing && Jonathan Nieder
2010-10-31 3:31 ` Junio C Hamano
2010-10-31 7:26 ` [PATCH/RFC 00/10] " Jonathan Nieder
2010-10-31 7:30 ` [PATCH 01/10] tests: add missing &&, batch 2 Jonathan Nieder
2010-10-31 7:33 ` [RFC/PATCH 02/10] test-lib: introduce test_line_count to measure files Jonathan Nieder
2010-11-09 22:56 ` Junio C Hamano
2010-11-09 23:09 ` Ævar Arnfjörð Bjarmason
2010-10-31 7:34 ` [PATCH 03/10] t6022 (renaming merge): chain test commands with && Jonathan Nieder
2010-10-31 7:35 ` [PATCH 04/10] t1502 (rev-parse --parseopt): test exit code from "-h" Jonathan Nieder
2010-10-31 7:36 ` [PATCH 05/10] t1400 (update-ref): use test_must_fail Jonathan Nieder
2010-10-31 7:36 ` [PATCH 06/10] t3301 (notes): use test_expect_code for clarity Jonathan Nieder
2010-10-31 7:38 ` [PATCH 07/10] t3404 (rebase -i): unroll test_commit loops Jonathan Nieder
2010-10-31 7:39 ` [PATCH 08/10] t3404 (rebase -i): move comment to description Jonathan Nieder
2010-11-17 23:12 ` Junio C Hamano
2010-10-31 7:40 ` [PATCH 09/10] t3404 (rebase -i): introduce helper to check position of HEAD Jonathan Nieder
2010-11-17 17:55 ` Junio C Hamano
2010-10-31 7:41 ` [PATCH 10/10] t4124 (apply --whitespace): use test_might_fail Jonathan Nieder
2010-11-09 22:25 ` [PATCH en/cascade-tests] tests: add missing && Junio C Hamano
2010-11-05 4:57 ` Elijah Newren
2010-10-03 20:00 ` [PATCHv6 16/16] Introduce portable_unset and use it to ensure proper && chaining Elijah Newren
2010-10-04 3:26 ` Ævar Arnfjörð Bjarmason
2010-10-04 4:44 ` Jonathan Nieder
2010-10-04 7:52 ` Junio C Hamano
2010-10-04 11:38 ` Jonathan Nieder
2010-10-03 21:09 ` [PATCHv6 00/16] Add missing &&'s in the testsuite Jonathan Nieder
2010-10-04 3:11 ` Ævar Arnfjörð Bjarmason
2010-10-04 3:44 ` Jonathan Nieder
2010-10-04 3:50 ` Ævar Arnfjörð Bjarmason
2010-10-04 12:28 ` yj2133011
2010-10-06 5:31 ` [TOY PATCH] test-lib: &&-chaining tester Jonathan Nieder
2010-10-06 8:09 ` Matthieu Moy
2010-10-06 8:25 ` Johannes Sixt
2010-10-06 8:52 ` Sverre Rabbelier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1286136014-7728-8-git-send-email-newren@gmail.com \
--to=newren@gmail.com \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jrnieder@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.