git/t/t1420-lost-found.sh
Andrew Chitester 6c5c7e7071 t1420: modernize the lost-found test
This test indirectly checks that the lost-found folder has 2 files in it
and then checks that the expected two files exist. Make this more
deliberate by removing the old test -f and compare the actual ls of the
lost-found directory with the expected files.

Signed-off-by: Andrew Chitester <andchi@fastmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2026-01-07 09:19:41 +09:00

40 lines
771 B
Bash
Executable File

#!/bin/sh
#
# Copyright (c) 2007 Johannes E. Schindelin
#
test_description='Test fsck --lost-found'
. ./test-lib.sh
test_expect_success setup '
git config core.logAllRefUpdates 0 &&
: > file1 &&
git add file1 &&
test_tick &&
git commit -m initial &&
echo 1 > file1 &&
echo 2 > file2 &&
git add file1 file2 &&
test_tick &&
git commit -m second &&
echo 3 > file3 &&
git add file3
'
test_expect_success 'lost and found something' '
git rev-parse HEAD > lost-commit &&
git rev-parse :file3 > lost-other &&
test_tick &&
git reset --hard HEAD^ &&
git fsck --lost-found &&
ls .git/lost-found/*/* >actual &&
cat >expect <<-EOF &&
.git/lost-found/commit/$(cat lost-commit)
.git/lost-found/other/$(cat lost-other)
EOF
test_cmp expect actual
'
test_done