threads / patch / 65066

patcht7605: use test_path_is_file instead of test -f

Subject: [PATCH] t7605: use test_path_is_file instead of test -f

## tl;dr

3 messages between Feb 24, 2026 and Feb 26, 2026. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Mansi Singh via GitGitGadget· Feb 24, 2026, 05:34 UTC · lore
From: Mansi <mansimaanu8627@gmail.com>

Replace old-style 'test -f' path checks with the modern test_path_is_file helper in the merge_c1_to_c2_cmds block.

The helper provides clearer failure messages and is the established convention in Git's test suite.

These instances were found using:
  grep -rn "test -[efd]" t/ --include="*.sh"
Signed-off-by: Mansi <mansimaanu8627@gmail.com>
---
    t7605: use test_path_is_file instead of test -f
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2050%2FMansiSingh17%2Fgsoc-t7605-test-path-helpers-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2050/MansiSingh17/gsoc-t7605-test-path-helpers-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2050
 t/t7605-merge-resolve.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
Show changes to t/t7605-merge-resolve.sh +3 −3
diff --git a/t/t7605-merge-resolve.sh b/t/t7605-merge-resolve.sh
index 5d56c38546..44de97a480 100755
--- a/t/t7605-merge-resolve.sh
+++ b/t/t7605-merge-resolve.sh
@@ -34,9 +34,9 @@ merge_c1_to_c2_cmds='
 	test "$(git rev-parse c1)" = "$(git rev-parse HEAD^1)" &&
 	test "$(git rev-parse c2)" = "$(git rev-parse HEAD^2)" &&
 	git diff --exit-code &&
-	test -f c0.c &&
-	test -f c1.c &&
-	test -f c2.c &&
+	test_path_is_file c0.c &&
+	test_path_is_file c1.c &&
+	test_path_is_file c2.c &&
 	test 3 = $(git ls-tree -r HEAD | wc -l) &&
 	test 3 = $(git ls-files | wc -l)
 '

base-commit: 7c02d39fc2ed2702223c7674f73150d9a7e61ba4
-- 
gitgitgadget
Lucas Seiki Oshiro· Feb 25, 2026, 19:04 UTC · re: Mansi Singh via GitGitGadget · lore

Re: [PATCH] t7605: use test_path_is_file instead of test -f

Hi, Mansi!
Show 8 quoted lines
> Replace old-style 'test -f' path checks with the modern
> test_path_is_file helper in the merge_c1_to_c2_cmds block.
> 
> The helper provides clearer failure messages and is the
> established convention in Git's test suite.
> 
> These instances were found using:
>  grep -rn "test -[efd]" t/ --include="*.sh"

I don't think this information is relevant to be placed in the commit description. Perhaps it would better placed after the scissors mark (the --- after the message) which is sent to the mailing list but ignored in the final commit.

Btw, since we're in Git we can use Git's special powers to do that. This is equivalent to your command line:

   $ git grep 'test -[efd]' -- 't/*.sh'

And this may be more useful, separating the output per file and using pathspecs to filter the tests (files that begin with "t") from other helper scripts inside t/:

   $ git grep --heading --break 'test -[efd]' -- 't/t*.sh'

I wrote a blog post about git-grep and other tools [1] that may be useful for you.

Show 6 quoted lines
> - test -f c0.c &&
> - test -f c1.c &&
> - test -f c2.c &&
> + test_path_is_file c0.c &&
> + test_path_is_file c1.c &&
> + test_path_is_file c2.c &&
The code itself looks good to me!
[1] https://lucasoshiro.github.io/posts-en/2023-02-13-git-debug/#git-grep
Mansi Singh via GitGitGadget· Feb 26, 2026, 00:57 UTC · re: Mansi Singh via GitGitGadget · lore

[PATCH v2] t7605: use test_path_is_file instead of test -f

From: Mansi <mansimaanu8627@gmail.com>

Replace old-style 'test -f' path checks with the modern test_path_is_file helper in the merge_c1_to_c2_cmds block.

The helper provides clearer failure messages and is the established convention in Git's test suite.

Signed-off-by: Mansi <mansimaanu8627@gmail.com>
---
    t7605: use test_path_is_file instead of test -f
    
    cc: Lucas Seiki Oshiro lucasseikioshiro@gmail.com
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2050%2FMansiSingh17%2Fgsoc-t7605-test-path-helpers-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2050/MansiSingh17/gsoc-t7605-test-path-helpers-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/2050
Range-diff vs v1:
 1:  11724e9310 ! 1:  0a0c9de263 t7605: use test_path_is_file instead of test -f
     @@ Commit message
          The helper provides clearer failure messages and is the
          established convention in Git's test suite.
      
     -    These instances were found using:
     -      grep -rn "test -[efd]" t/ --include="*.sh"
     -
          Signed-off-by: Mansi <mansimaanu8627@gmail.com>
      
       ## t/t7605-merge-resolve.sh ##
 t/t7605-merge-resolve.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
Show changes to t/t7605-merge-resolve.sh +3 −3
diff --git a/t/t7605-merge-resolve.sh b/t/t7605-merge-resolve.sh
index 5d56c38546..44de97a480 100755
--- a/t/t7605-merge-resolve.sh
+++ b/t/t7605-merge-resolve.sh
@@ -34,9 +34,9 @@ merge_c1_to_c2_cmds='
 	test "$(git rev-parse c1)" = "$(git rev-parse HEAD^1)" &&
 	test "$(git rev-parse c2)" = "$(git rev-parse HEAD^2)" &&
 	git diff --exit-code &&
-	test -f c0.c &&
-	test -f c1.c &&
-	test -f c2.c &&
+	test_path_is_file c0.c &&
+	test_path_is_file c1.c &&
+	test_path_is_file c2.c &&
 	test 3 = $(git ls-tree -r HEAD | wc -l) &&
 	test 3 = $(git ls-files | wc -l)
 '

base-commit: 7c02d39fc2ed2702223c7674f73150d9a7e61ba4
-- 
gitgitgadget

← back to recent threads