Thread (3 messages) flat view 3 messages, 2 authors, 2016-06-15

Re: [PATCH] t3600: fix broken "choking git rm" test

From: SZEDER Gábor <hidden>
Date: 2016-06-15 22:59:01

On Tue, Oct 15, 2013 at 05:18:04PM -0700, Jonathan Nieder wrote:
SZEDER Gábor wrote:
quoted
--- 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.
OK.  My motivation for the ';' was that we should make sure that both
steps of the cleanup are executed.  However, now thinking about it if
regular 'rm -f' can't remove the lock file then all bets are off
anyway.
[...]
quoted
-	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.)
I was not aware of the test_path_is_missing helper.  I don't think it
matters whether it's a file or a directory, because a stale
.git/index.lock directory would be just as bad.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help