From: Han-Wen Nienhuys <hanwen@xxxxxxxxxx> This is more explicit, and reduces the depency between test functions. It also is more amenable to use with reftable, which has no concept of (non)existence of a reflog Signed-off-by: Han-Wen Nienhuys <hanwen@xxxxxxxxxx> --- t/t5304-prune.sh | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/t/t5304-prune.sh b/t/t5304-prune.sh index b447ce56a9b2..4ffc0076801e 100755 --- a/t/t5304-prune.sh +++ b/t/t5304-prune.sh @@ -94,26 +94,22 @@ test_expect_success 'prune: prune nonsense parameters' ' ' test_expect_success 'prune: prune unreachable heads' ' - git config core.logAllRefUpdates false && - mv .git/logs .git/logs.old && : > file2 && git add file2 && git commit -m temporary && tmp_head=$(git rev-list -1 HEAD) && git reset HEAD^ && + git reflog expire --all && git prune && test_must_fail git reset $tmp_head -- - ' test_expect_success 'prune: do not prune detached HEAD with no reflog' ' git checkout --detach --quiet && git commit --allow-empty -m "detached commit" && - # verify that there is no reflogs - # (should be removed and disabled by previous test) - test_path_is_missing .git/logs && + git reflog expire --all && git prune -n >prune_actual && test_must_be_empty prune_actual @@ -123,6 +119,7 @@ test_expect_success 'prune: prune former HEAD after checking out branch' ' head_oid=$(git rev-parse HEAD) && git checkout --quiet main && + git reflog expire --all && git prune -v >prune_actual && grep "$head_oid" prune_actual -- gitgitgadget