On Wed, Feb 07, 2018 at 07:41:56PM -0500, Ben Peart wrote: [] > diff --git a/t/t0050-filesystem.sh b/t/t0050-filesystem.sh > index b29d749bb7..219c96594c 100755 > --- a/t/t0050-filesystem.sh > +++ b/t/t0050-filesystem.sh > @@ -80,7 +80,17 @@ test_expect_success 'merge (case change)' ' > git merge topic > ' > > - > +test_expect_success CASE_INSENSITIVE_FS 'add directory (with different case)' ' > + git reset --hard initial && > + mkdir -p dir1 && > + mkdir -p dir1/dir2 && > + touch dir1/dir2/a && > + touch dir1/dir2/b && > + git add dir1/dir2/a && > + git add dir1/DIR2/b && > + camel=$(git ls-files | grep dir2) && > + test $(echo "$camel" | wc -l) = 2 > +' > There is nothing wrong with with "wc -l", but: a more new-style would probably use test_line_count() here. My personal favorite would be to spell out what we expect and run a diff. When it fails, we can see what fails, and the function would look like this: test_expect_success CASE_INSENSITIVE_FS 'add directory (with different case)' ' git reset --hard initial && mkdir -p dir1 && mkdir -p dir1/dir2 && touch dir1/dir2/a && touch dir1/dir2/b && git add dir1/dir2/a && git add dir1/DIR2/b && git ls-files | grep dir2 | sort >actual && cat >expected <<-\EOF && dir1/dir2/a dir1/dir2/b EOF test_cmp expected actual '