On Sat, May 1, 2021 at 11:42 AM Jeff King <peff@xxxxxxxx> wrote: > Commit 10ecfa7649 (verify_path: disallow symlinks in .gitmodules, > 2018-05-04) made it impossible to load a symlink .gitmodules file into > the index. However, there are no tests of this behavior. Let's make sure > this case is covered. We can easily reuse the test setup created by > the matching b7b1fca175 (fsck: complain when .gitmodules is a symlink, > 2018-05-04). > > Signed-off-by: Jeff King <peff@xxxxxxxx> > --- > diff --git a/t/t7450-bad-git-dotfiles.sh b/t/t7450-bad-git-dotfiles.sh > @@ -139,7 +139,7 @@ test_expect_success 'index-pack --strict works for non-repo pack' ' > -test_expect_success 'fsck detects symlinked .gitmodules file' ' > +test_expect_success 'set up repo with symlinked .gitmodules file' ' > git init symlink && > ( > cd symlink && > @@ -155,8 +155,14 @@ test_expect_success 'fsck detects symlinked .gitmodules file' ' > { > printf "100644 blob $content\t$tricky\n" && > printf "120000 blob $target\t.gitmodules\n" > - } >bad-tree && > - tree=$(git mktree <bad-tree) && > + } >bad-tree > + ) && > + tree=$(git -C symlink mktree <symlink/bad-tree) > +' `tree` is an unusually generic name for this now-global variable. One can easily imagine it being re-used by some unrelated test arbitrarily inserted into this script, thus potentially breaking the following tests which depend upon it. I wonder if a name such as `BAD_TREE` would be more appropriate.