Re: [PATCH v2] t/pack-refs-tests: use test_path_is_missing
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 14, 2026, 16:39 UTC
- Message-ID
- <xmqq5x6yxt52.fsf@gitster.g>
- In-Reply-To
- <20260314060550.1277-1-riteshjd75@gmail.com>
Ritesh Singh Jadoun <riteshjd75@gmail.com> writes:
Show 21 quoted lines
> The pack-refs tests currently use raw 'test -f' checks with negation.
> Update them to use Git's standard helper function test_path_is_missing
> for consistency and clearer failure reporting. This aligns with
> CodingGuidelines and makes test failures more obvious.
>
> Signed-off-by: Ritesh Singh Jadoun <riteshjd75@gmail.com>
> ---
> t/pack-refs-tests.sh | 28 ++++++++++++++--------------
> 1 file changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/t/pack-refs-tests.sh b/t/pack-refs-tests.sh
> index 2fdaccb6c7..3cc4906f05 100644
> --- a/t/pack-refs-tests.sh
> +++ b/t/pack-refs-tests.sh
> @@ -61,13 +61,13 @@ test_expect_success 'see if a branch still exists after git ${pack_refs} --prune
> test_expect_success 'see if git ${pack_refs} --prune remove ref files' '
> git branch f &&
> git ${pack_refs} --all --prune &&
> - ! test -f .git/refs/heads/f
> + test_path_is_missing .git/refs/heads/f
> 'Good.
Show 6 quoted lines
> test_expect_success 'see if git ${pack_refs} --prune removes empty dirs' '
> git branch r/s/t &&
> git ${pack_refs} --all --prune &&
> - ! test -e .git/refs/heads/r
> + ! test_path_exists .git/refs/heads/r
> 'Questionable. When do we want to loudly tell the human about an unsatisfied expectation? We expect .git/refs/heads/r not to exist, so we want to use "test_path_is_missing", no?
Please do double check the remainder of the patch, although from a cursory look I think you got them all correctly.
THanks.
Show 57 quoted lines
> test_expect_success 'git branch g should work when git branch g/h has been deleted' '
> @@ -111,43 +111,43 @@ test_expect_success 'test excluded refs are not packed' '
> git branch dont_pack2 &&
> git branch pack_this &&
> git ${pack_refs} --all --exclude "refs/heads/dont_pack*" &&
> - test -f .git/refs/heads/dont_pack1 &&
> - test -f .git/refs/heads/dont_pack2 &&
> - ! test -f .git/refs/heads/pack_this'
> + test_path_is_file .git/refs/heads/dont_pack1 &&
> + test_path_is_file .git/refs/heads/dont_pack2 &&
> + test_path_is_missing .git/refs/heads/pack_this'
>
> test_expect_success 'test --no-exclude refs clears excluded refs' '
> git branch dont_pack3 &&
> git branch dont_pack4 &&
> git ${pack_refs} --all --exclude "refs/heads/dont_pack*" --no-exclude &&
> - ! test -f .git/refs/heads/dont_pack3 &&
> - ! test -f .git/refs/heads/dont_pack4'
> + test_path_is_missing .git/refs/heads/dont_pack3 &&
> + test_path_is_missing .git/refs/heads/dont_pack4'
>
> test_expect_success 'test only included refs are packed' '
> git branch pack_this1 &&
> git branch pack_this2 &&
> git tag dont_pack5 &&
> git ${pack_refs} --include "refs/heads/pack_this*" &&
> - test -f .git/refs/tags/dont_pack5 &&
> - ! test -f .git/refs/heads/pack_this1 &&
> - ! test -f .git/refs/heads/pack_this2'
> + test_path_is_file .git/refs/tags/dont_pack5 &&
> + test_path_is_missing .git/refs/heads/pack_this1 &&
> + test_path_is_missing .git/refs/heads/pack_this2'
>
> test_expect_success 'test --no-include refs clears included refs' '
> git branch pack1 &&
> git branch pack2 &&
> git ${pack_refs} --include "refs/heads/pack*" --no-include &&
> - test -f .git/refs/heads/pack1 &&
> - test -f .git/refs/heads/pack2'
> + test_path_is_file .git/refs/heads/pack1 &&
> + test_path_is_file .git/refs/heads/pack2'
>
> test_expect_success 'test --exclude takes precedence over --include' '
> git branch dont_pack5 &&
> git ${pack_refs} --include "refs/heads/pack*" --exclude "refs/heads/pack*" &&
> - test -f .git/refs/heads/dont_pack5'
> + test_path_is_file .git/refs/heads/dont_pack5'
>
> test_expect_success 'see if up-to-date packed refs are preserved' '
> git branch q &&
> git ${pack_refs} --all --prune &&
> git update-ref refs/heads/q refs/heads/q &&
> - ! test -f .git/refs/heads/q
> + test_path_is_missing .git/refs/heads/q
> '
>
> test_expect_success 'pack, prune and repack' '