Skip to contentSkip to conversation

t/pack-refs-tests: fix helper usage

PATCH In review Jayesh Daga via GitGitGadget 2 participants 4 messages Mar 22

lore
Share & tools
lore
#0 lore raw

cover t/pack-refs-tests: fix helper usage

High-level (Intent & Context)
=============================

The test script t/pack-refs-tests.sh has two issues that prevent it from running correctly.

It uses: ! test -f .git/refs/heads/f

This is inconsistent with the Git test framework, where helper functions such as test_path_is_missing should be used instead of raw test checks.

Low-level (Implementation & Justification)
==========================================

Without sourcing test-lib.sh, the test framework is not initialized, leading to errors such as: test_expect_success: not found

* Replaced raw file check with the appropriate helper:

- ! test -f .git/refs/heads/f
+ test_path_is_missing .git/refs/heads/f

Summary

* Replace test -f with test_path_is_missing

jayesh0104 (2):
t/pack-refs-tests: drop '-f' from test_path_is_missing t/pack-refs-tests: drop '-f' from test_path_is_missing

 t/pack-refs-tests.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

base-commit: 6e8d538aab8fe4dd07ba9fb87b5c7edcfa5706ad
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-2247%2Fjayesh0104%2Ffix-pack-refs-test-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-2247/jayesh0104/fix-pack-refs-test-v1
Pull-Request: https://github.com/git/git/pull/2247

Signature · 1 line
gitgitgadget
#1 lore raw

PATCH 1/2 t/pack-refs-tests: drop '-f' from test_path_is_missing

From: jayesh0104 <[email protected]>

test_path_is_missing expects exactly one argument: the path to check for absence. Passing '-f' is incorrect and results in "bug in the test script: 1 param" during test execution.

The '-f' flag appears to have been carried over from the equivalent 'test -f' usage, but test_path_is_missing does not accept such flags.

Remove the extraneous '-f' to use the helper correctly and restore proper test behavior.

---
 t/pack-refs-tests.sh | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
 mode change 100644 => 100755 t/pack-refs-tests.sh
t/pack-refs-tests.sh +7 -1
old mode 100644
new mode 100755
index 2fdaccb6c7..8a0c955647
@@ -1,3 +1,9 @@
+#!/bin/sh
+
+test_description='test pack-refs'
+
+. ./test-lib.sh
+
 pack_refs=${pack_refs:-pack-refs}
 
 test_expect_success 'enable reflogs' '
@@ -61,7 +67,7 @@ test_expect_success 'see if a branch still exists after git ${pack_refs} --prune
 test_expect_success 'see if git ${pack_refs} --prune remove ref files' '
 	git branch f &&
 	git ${pack_refs} --all --prune &&
-	! test -f .git/refs/heads/f
+	test_path_is_missing .git/refs/heads/f
 '
 
 test_expect_success 'see if git ${pack_refs} --prune removes empty dirs' '
Signature · 1 line
gitgitgadget
#2 lore raw

PATCH 2/2 t/pack-refs-tests: drop '-f' from test_path_is_missing

In reply to Jayesh Daga via GitGitGadget

From: jayesh0104 <[email protected]>

test_path_is_missing expects exactly one argument: the path to check for absence. Passing '-f' is incorrect and results in "bug in the test script: 1 param" during test execution.

The '-f' flag appears to have been carried over from the equivalent 'test -f' usage, but test_path_is_missing does not accept such flags.

Remove the extraneous '-f' to use the helper correctly and restore proper test behavior.

---
 t/pack-refs-tests.sh | 6 ------
 1 file changed, 6 deletions(-)
 mode change 100755 => 100644 t/pack-refs-tests.sh
t/pack-refs-tests.sh +0 -6
old mode 100755
new mode 100644
index 8a0c955647..4a85d96c6b
@@ -1,9 +1,3 @@
-#!/bin/sh
-
-test_description='test pack-refs'
-
-. ./test-lib.sh
-
 pack_refs=${pack_refs:-pack-refs}
 
 test_expect_success 'enable reflogs' '
Signature · 1 line
gitgitgadget
#3 lore raw

Re: [PATCH 2/2] t/pack-refs-tests: drop '-f' from test_path_is_missing

Hi Jayesh,
Thanks for the patch

It is a textbook micro project ;)
But I could find a few flaws in it.

Quoted 14 lines

test_path_is_missing expects exactly one argument: the path to

t/pack-refs-tests.sh +0 -7
@@ -1,9 +1,3 @@
-#!/bin/sh
-
-test_description='test pack-refs'
-
-. ./test-lib.sh
-
 pack_refs=${pack_refs:-pack-refs}
 
 test_expect_success 'enable reflogs' '
--
Quoted 1 line

gitgitgadget

Patch 2 removes exactly what Patch 1 adds.
You'll have to use rebase -i
i.e interactive rebase
and change em.

Here are some docs [1]

Regards,
- Jayatheerth

1 - https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History