t0008: improve test cleanup to fix failing test

The "large exclude file ignored in tree" test fails. This is due to an
additional warning message that is generated in the test. "warning:
unable to access 'subdir/.gitignore': Too many levels of symbolic
links", the extra warning that is not supposed to be there, happens
because of some leftover files left by previous tests.

To fix this we improve cleanup on "symlinks not respected in-tree", and
because the tests in t0008 in general have poor cleanup, at the start of
"large exclude file ignored in tree" we search for any leftover
.gitignore and remove them before starting the test.

Improve post-test cleanup and add pre-test cleanup to make sure that we
have a workable environment for the test.

Signed-off-by: Mirko Faina <mroik@delayed.space>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Mirko Faina
2026-03-16 02:15:42 +01:00
committed by Junio C Hamano
parent 9a2fb147f2
commit 48430e44ac

View File

@@ -946,7 +946,7 @@ test_expect_success SYMLINKS 'symlinks respected in info/exclude' '
'
test_expect_success SYMLINKS 'symlinks not respected in-tree' '
test_when_finished "rm .gitignore" &&
test_when_finished "rm -rf subdir .gitignore err actual" &&
ln -s ignore .gitignore &&
mkdir subdir &&
ln -s ignore subdir/.gitignore &&
@@ -957,6 +957,7 @@ test_expect_success SYMLINKS 'symlinks not respected in-tree' '
test_expect_success EXPENSIVE 'large exclude file ignored in tree' '
test_when_finished "rm .gitignore" &&
find . -name .gitignore -exec rm "{}" ";" &&
dd if=/dev/zero of=.gitignore bs=101M count=1 &&
git ls-files -o --exclude-standard 2>err &&
echo "warning: ignoring excessively large pattern file: .gitignore" >expect &&