t: add test for git refs optimize subcommand

Add a test script, `t/t1463-refs-optimize.sh`, for the new `git refs
optimize` command.

This script acts as a simple driver, leveraging the shared test library
created in the preceding commit. It works by overriding the
`$pack_refs` variable to "refs optimize" and then sourcing the
shared library (`t/pack-refs-tests.sh`).

This approach ensures that `git refs optimize` is tested against the
entire comprehensive test suite of `git pack-refs`, verifying
that it acts as a compatible drop-in replacement.

Mentored-by: Patrick Steinhardt <ps@pks.im>
Mentored-by: shejialuo <shejialuo@gmail.com>
Signed-off-by: Meet Soni <meetsoni3017@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
main
Meet Soni 2025-09-19 13:56:47 +05:30 committed by Junio C Hamano
parent ac0bad0af4
commit c44afd67d2
2 changed files with 19 additions and 1 deletions

View File

@ -211,6 +211,7 @@ integration_tests = [
't1451-fsck-buffer.sh',
't1460-refs-migrate.sh',
't1461-refs-list.sh',
't1463-refs-optimize.sh',
't1500-rev-parse.sh',
't1501-work-tree.sh',
't1502-rev-parse-parseopt.sh',
@ -1219,4 +1220,4 @@ if perl.found() and time.found()
timeout: 0,
)
endforeach
endif
endif

17
t/t1463-refs-optimize.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/sh

test_description='git refs optimize should not change the branch semantic

This test runs git refs optimize and git show-ref and checks that the branch
semantic is still the same.
'

GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main
export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
GIT_TEST_DEFAULT_REF_FORMAT=files
export GIT_TEST_DEFAULT_REF_FORMAT

. ./test-lib.sh

pack_refs='refs optimize'
. "$TEST_DIRECTORY"/pack-refs-tests.sh