On Thu, Jul 10, 2014 at 8:31 PM, David Turner <dturner@xxxxxxxxxxxxxxxx> wrote: > Add tests to confirm that invalidation of subdirectories neither over- > nor under-invalidates. > > Signed-off-by: David Turner <dturner@xxxxxxxxxxx> > --- > t/t0090-cache-tree.sh | 26 +++++++++++++++++++++++--- > 1 file changed, 23 insertions(+), 3 deletions(-) > > diff --git a/t/t0090-cache-tree.sh b/t/t0090-cache-tree.sh > index 98fb1ab..3a3342e 100755 > --- a/t/t0090-cache-tree.sh > +++ b/t/t0090-cache-tree.sh > @@ -22,9 +22,10 @@ test_shallow_cache_tree () { > } > > test_invalid_cache_tree () { > - echo "invalid (0 subtrees)" >expect && > - printf "SHA #(ref) (%d entries, 0 subtrees)\n" $(git ls-files|wc -l) >>expect && > - cmp_cache_tree expect > + printf "invalid %s ()\n" "" "$@" >expect && > + test-dump-cache-tree | \ nit: unnecessary backslash > + sed -n -e "s/[0-9]* subtrees//" -e '/#(ref)/d' -e '/^invalid /p' >actual && > + test_cmp expect actual > } > > test_no_cache_tree () { > @@ -49,6 +50,25 @@ test_expect_success 'git-add invalidates cache-tree' ' > test_invalid_cache_tree > ' > > +test_expect_success 'git-add in subdir invalidates cache-tree' ' > + test_when_finished "git reset --hard; git read-tree HEAD" && > + mkdir dirx && > + echo "I changed this file" >dirx/foo && > + git add dirx/foo && > + test_invalid_cache_tree > +' > + > +test_expect_success 'git-add in subdir does not invalidate sibling cache-tree' ' > + git tag no-children && > + test_when_finished "git reset --hard no-children; git read-tree HEAD" && > + mkdir dir1 dir2 && > + test_commit dir1/a && > + test_commit dir2/b && > + echo "I changed this file" >dir1/a && > + git add dir1/a && > + test_invalid_cache_tree dir1/ > +' > + > test_expect_success 'update-index invalidates cache-tree' ' > test_when_finished "git reset --hard; git read-tree HEAD" && > echo "I changed this file" >foo && > -- > 2.0.0.390.gcb682f8 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html