From: Jonathan Nieder <jrnieder@gmail.com>
To: "SZEDER Gábor" <szeder@ira.uka.de>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] t3600: fix broken "choking git rm" test
Date: Tue, 15 Oct 2013 17:18:04 -0700 [thread overview]
Message-ID: <20131016001804.GJ9464@google.com> (raw)
In-Reply-To: <1381881687-11179-1-git-send-email-szeder@ira.uka.de>
SZEDER Gábor wrote:
> The test 'choking "git rm" should not let it die with cruft' is
> supposed to check 'git rm's behavior when interrupted by provoking a
> SIGPIPE while 'git rm' is busily deleting files from a specially
> crafted index.
>
> This test is silently broken for the following reasons:
[...]
> Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
> ---
> A particularly funny one from the fallout of gmane/236183
Fun. :) Makes sense.
> --- a/t/t3600-rm.sh
> +++ b/t/t3600-rm.sh
> @@ -240,18 +240,15 @@ test_expect_success 'refresh index before checking if it is up-to-date' '
>
> test_expect_success 'choking "git rm" should not let it die with cruft' '
> git reset -q --hard &&
> + test_when_finished "rm -f .git/index.lock ; git reset -q --hard" &&
I'd use "&&" here --- the test_cleanup checks the exit status from
this scriptlet, so it's a good habit.
[...]
> - test -f .git/index.lock
> - status=$?
> - rm -f .git/index.lock
> - git reset -q --hard
> - test "$status" != 0
> + test ! -f .git/index.lock
Gah. Thanks for cleaning it up.
Maybe test_path_is_missing would make sense here? (It would notice a
.git/index.lock directory, which is not very likely :), but more
importantly, it says why it is failing the test when it fails.)
With or without the changes mentioned above,
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Thanks.
diff --git i/t/t3600-rm.sh w/t/t3600-rm.sh
index 8386b54..540c49b 100755
--- i/t/t3600-rm.sh
+++ w/t/t3600-rm.sh
@@ -240,7 +240,7 @@ test_expect_success 'refresh index before checking if it is up-to-date' '
test_expect_success 'choking "git rm" should not let it die with cruft' '
git reset -q --hard &&
- test_when_finished "rm -f .git/index.lock ; git reset -q --hard" &&
+ test_when_finished "rm -f .git/index.lock && git reset -q --hard" &&
i=0 &&
while test $i -lt 12000
do
@@ -248,7 +248,7 @@ test_expect_success 'choking "git rm" should not let it die with cruft' '
i=$(( $i + 1 ))
done | git update-index --index-info &&
git rm -n "some-file-*" | : &&
- test ! -f .git/index.lock
+ test_path_is_missing .git/index.lock
'
test_expect_success 'rm removes subdirectories recursively' '
next prev parent reply other threads:[~2013-10-16 0:18 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-16 0:01 [PATCH] t3600: fix broken "choking git rm" test SZEDER Gábor
2013-10-16 0:18 ` Jonathan Nieder [this message]
2013-10-16 0:38 ` SZEDER Gábor
-- strict thread matches above, loose matches on Subject: below --
2013-10-16 0:48 SZEDER Gábor
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=20131016001804.GJ9464@google.com \
--to=jrnieder@gmail.com \
--cc=git@vger.kernel.org \
--cc=szeder@ira.uka.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).