t2003: modernize path existence checks using test helpers

The old style 'test -f' and 'test -d' checks are silent on failure,
which makes debugging difficult.

Replace them with the 'test_path_is_*' helpers which provide verbose
error messages when a test fails.

Signed-off-by: Burak Kaan Karaçay <bkkaracay@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Burak Kaan Karaçay
2026-02-09 14:24:44 +03:00
committed by Junio C Hamano
parent 67ad42147a
commit 168d575719

View File

@@ -24,27 +24,28 @@ test_expect_success SYMLINKS 'have symlink in place where dir is expected.' '
mkdir path2 &&
ln -s path2 path1 &&
git checkout-index -f -a &&
test ! -h path1 && test -d path1 &&
test -f path1/file1 && test ! -f path2/file1
test_path_is_dir_not_symlink path1 &&
test_path_is_file path1/file1 &&
test_path_is_missing path2/file1
'
test_expect_success 'use --prefix=path2/' '
rm -fr path0 path1 path2 &&
mkdir path2 &&
git checkout-index --prefix=path2/ -f -a &&
test -f path2/path0 &&
test -f path2/path1/file1 &&
test ! -f path0 &&
test ! -f path1/file1
test_path_is_file path2/path0 &&
test_path_is_file path2/path1/file1 &&
test_path_is_missing path0 &&
test_path_is_missing path1/file1
'
test_expect_success 'use --prefix=tmp-' '
rm -fr path0 path1 path2 tmp* &&
git checkout-index --prefix=tmp- -f -a &&
test -f tmp-path0 &&
test -f tmp-path1/file1 &&
test ! -f path0 &&
test ! -f path1/file1
test_path_is_file tmp-path0 &&
test_path_is_file tmp-path1/file1 &&
test_path_is_missing path0 &&
test_path_is_missing path1/file1
'
test_expect_success 'use --prefix=tmp- but with a conflicting file and dir' '
@@ -52,10 +53,10 @@ test_expect_success 'use --prefix=tmp- but with a conflicting file and dir' '
echo nitfol >tmp-path1 &&
mkdir tmp-path0 &&
git checkout-index --prefix=tmp- -f -a &&
test -f tmp-path0 &&
test -f tmp-path1/file1 &&
test ! -f path0 &&
test ! -f path1/file1
test_path_is_file tmp-path0 &&
test_path_is_file tmp-path1/file1 &&
test_path_is_missing path0 &&
test_path_is_missing path1/file1
'
test_expect_success SYMLINKS 'use --prefix=tmp/orary/ where tmp is a symlink' '
@@ -63,10 +64,10 @@ test_expect_success SYMLINKS 'use --prefix=tmp/orary/ where tmp is a symlink' '
mkdir tmp1 tmp1/orary &&
ln -s tmp1 tmp &&
git checkout-index --prefix=tmp/orary/ -f -a &&
test -d tmp1/orary &&
test -f tmp1/orary/path0 &&
test -f tmp1/orary/path1/file1 &&
test -h tmp
test_path_is_dir tmp1/orary &&
test_path_is_file tmp1/orary/path0 &&
test_path_is_file tmp1/orary/path1/file1 &&
test_path_is_symlink tmp
'
test_expect_success SYMLINKS 'use --prefix=tmp/orary- where tmp is a symlink' '
@@ -74,9 +75,9 @@ test_expect_success SYMLINKS 'use --prefix=tmp/orary- where tmp is a symlink' '
mkdir tmp1 &&
ln -s tmp1 tmp &&
git checkout-index --prefix=tmp/orary- -f -a &&
test -f tmp1/orary-path0 &&
test -f tmp1/orary-path1/file1 &&
test -h tmp
test_path_is_file tmp1/orary-path0 &&
test_path_is_file tmp1/orary-path1/file1 &&
test_path_is_symlink tmp
'
test_expect_success SYMLINKS 'use --prefix=tmp- where tmp-path1 is a symlink' '
@@ -84,10 +85,9 @@ test_expect_success SYMLINKS 'use --prefix=tmp- where tmp-path1 is a symlink' '
mkdir tmp1 &&
ln -s tmp1 tmp-path1 &&
git checkout-index --prefix=tmp- -f -a &&
test -f tmp-path0 &&
test ! -h tmp-path1 &&
test -d tmp-path1 &&
test -f tmp-path1/file1
test_path_is_file tmp-path0 &&
test_path_is_dir_not_symlink tmp-path1 &&
test_path_is_file tmp-path1/file1
'
test_expect_success 'apply filter from working tree .gitattributes with --prefix' '