Re: [PATCH 12/12] t5312: move reffiles specific tests to t0600
On Wed, Jan 17, 2024 at 07:52:35PM +0000, John Cai via GitGitGadget wrote:
Show 48 quoted lines
> From: John Cai <johncai86@gmail.com>
>
> Move a few tests into t0600 since they specifically test the packed-refs
> file and thus are specific to the reffiles backend.
>
> Signed-off-by: John Cai <johncai86@gmail.com>
> ---
> t/t0600-reffiles-backend.sh | 30 ++++++++++++++++++++++++++++++
> t/t5312-prune-corruption.sh | 26 --------------------------
> 2 files changed, 30 insertions(+), 26 deletions(-)
>
> diff --git a/t/t0600-reffiles-backend.sh b/t/t0600-reffiles-backend.sh
> index c88576dfea5..190155f592d 100755
> --- a/t/t0600-reffiles-backend.sh
> +++ b/t/t0600-reffiles-backend.sh
> @@ -571,4 +571,34 @@ test_expect_success 'log diagnoses bogus HEAD symref' '
> test_grep broken stderr
> '
>
> +# we do not want to count on running pack-refs to
> +# actually pack it, as it is perfectly reasonable to
> +# skip processing a broken ref
> +test_expect_success 'create packed-refs file with broken ref' '
> + test_tick && git commit --allow-empty -m one &&
> + recoverable=$(git rev-parse HEAD) &&
> + test_tick && git commit --allow-empty -m two &&
> + missing=$(git rev-parse HEAD) &&
> + rm -f .git/refs/heads/main &&
> + cat >.git/packed-refs <<-EOF &&
> + $missing refs/heads/main
> + $recoverable refs/heads/other
> + EOF
> + echo $missing >expect &&
> + git rev-parse refs/heads/main >actual &&
> + test_cmp expect actual
> +'
> +
> +test_expect_success 'pack-refs does not silently delete broken packed ref' '
> + git pack-refs --all --prune &&
> + git rev-parse refs/heads/main >actual &&
> + test_cmp expect actual
> +'
> +
> +test_expect_success 'pack-refs does not drop broken refs during deletion' '
> + git update-ref -d refs/heads/other &&
> + git rev-parse refs/heads/main >actual &&
> + test_cmp expect actual
> +'
Should these tests be moved into t0601-reffiles-pack-refs.sh instead?
Patrick