Re: [PATCH v3 01/10] cache-tree tests: refactor for modern test style
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 23, 2021, 21:34 UTC
- Message-ID
- <xmqqtur72v7o.fsf@gitster.c.googlers.com>
- In-Reply-To
- <20210123130046.21975-2-avarab@gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
Show 12 quoted lines
> diff --git a/t/t0090-cache-tree.sh b/t/t0090-cache-tree.sh
> index 5a633690bf..45e1cc82ed 100755
> --- a/t/t0090-cache-tree.sh
> +++ b/t/t0090-cache-tree.sh
> @@ -10,7 +10,8 @@ cache-tree extension.
> cmp_cache_tree () {
> test-tool dump-cache-tree | sed -e '/#(ref)/d' >actual &&
> sed "s/$OID_REGEX/SHA/" <actual >filtered &&
> - test_cmp "$1" filtered
> + test_cmp "$1" filtered &&
> + rm filtered
> }OK. Cleaning after itself is good, and not cleaning when there is an error is probably a bit more helpful to those who debug, but I think test_cmp would give them enough to work on. A failure to remove filtered at the end CAN mistakenly make the caller to think that the expected output was not obtained, though.
Show 39 quoted lines
> @@ -83,18 +84,6 @@ test_expect_success 'git-add in subdir invalidates cache-tree' ' > test_invalid_cache_tree > ' > > -cat >before <<\EOF > -SHA (3 entries, 2 subtrees) > -SHA dir1/ (1 entries, 0 subtrees) > -SHA dir2/ (1 entries, 0 subtrees) > -EOF > - > -cat >expect <<\EOF > -invalid (2 subtrees) > -invalid dir1/ (0 subtrees) > -SHA dir2/ (1 entries, 0 subtrees) > -EOF > - > 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" && > @@ -102,9 +91,20 @@ test_expect_success 'git-add in subdir does not invalidate sibling cache-tree' ' > test_commit dir1/a && > test_commit dir2/b && > echo "I changed this file" >dir1/a && > + test_when_finished "rm before" && > + cat >before <<-\EOF && > + SHA (3 entries, 2 subtrees) > + SHA dir1/ (1 entries, 0 subtrees) > + SHA dir2/ (1 entries, 0 subtrees) > + EOF > cmp_cache_tree before && > echo "I changed this file" >dir1/a && > git add dir1/a && > + cat >expect <<-\EOF && > + invalid (2 subtrees) > + invalid dir1/ (0 subtrees) > + SHA dir2/ (1 entries, 0 subtrees) > + EOF > cmp_cache_tree expect > '
Why remove only 'before' and not 'expect' in when-finished handler?