]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t1509: facilitate repeated script invocations
authorEric Sunshine <sunshine@sunshineco.com>
Mon, 21 Nov 2022 03:00:21 +0000 (03:00 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 9 Dec 2022 01:41:59 +0000 (10:41 +0900)
t1509-root-work-tree.sh, which tests behavior of a Git repository
located at the root `/` directory, refuses to run if it detects the
presence of an existing repository at `/`. This safeguard ensures that
it won't clobber a legitimate repository at that location. However,
because t1509 does a poor job of cleaning up after itself, it runs afoul
of its own safety check on subsequent runs, which makes it painful to
run the script repeatedly since each run requires manual cleanup of
detritus from the previous run.

Address this shortcoming by making t1509 clean up after itself as its
last action. This is safe since the script can only make it to this
cleanup action if it did not find a legitimate repository at `/` in the
first place, so the resources cleaned up here can only have been created
by the script itself.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
t/t1509-root-work-tree.sh

index d041762628087748ba1b9e56602a8e43b6a6cdae..c799f5b6acad35633c6efa87a1a5e10aa67b8fd2 100755 (executable)
@@ -256,4 +256,9 @@ test_expect_success 'go to /foo' 'cd /foo'
 
 test_vars 'auto gitdir, root' "/" "" ""
 
+test_expect_success 'cleanup root' '
+       rm -rf /.git /refs /objects /info /hooks /branches /foo &&
+       rm -f /HEAD /config /description /expected /ls.expected /me /result
+'
+
 test_done