]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t9811: be more precise to check importing of tags
authorAnthony Wang <anthonywang513@gmail.com>
Wed, 16 Apr 2025 14:59:39 +0000 (16:59 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 16 Apr 2025 16:05:20 +0000 (09:05 -0700)
The tests use grep to search the output of `git tag` for tagnames they
expect to exist, which can incorrectly pass if an unxpected tag
has the expected tag as its substring. We fix this by using `git
show-ref --verify` instead.

Additionally, we add a negative test to verify that a possible
uninteded tag does not show up in the imported repository.

This change also fixes an additional problem, where piping the
output of `git tag` caused the exit codes to be lost.

Signed-off-by: Anthony Wang <anthonywang513@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t9811-git-p4-label-import.sh

index 5ac5383fb717153b893302eba7952b6962de70a2..39856629c0065766c330484edb5f898ed50534c5 100755 (executable)
@@ -95,9 +95,9 @@ test_expect_success 'two labels on the same changelist' '
                cd "$git" &&
                git p4 sync --import-labels &&
 
-               git tag | grep TAG_F1 &&
-               git tag | grep -q TAG_F1_1 &&
-               git tag | grep -q TAG_F1_2 &&
+               git show-ref --verify refs/tags/TAG_F1_1 &&
+               git show-ref --verify refs/tags/TAG_F1_2 &&
+               test_must_fail git show-ref --verify refs/tags/TAG_F1_ONLY &&
 
                cd main &&
 
@@ -207,8 +207,7 @@ test_expect_success 'use git config to enable import/export of tags' '
                git tag CFG_A_GIT_TAG &&
                git p4 rebase --verbose &&
                git p4 submit --verbose &&
-               git tag &&
-               git tag | grep TAG_F1_1
+               git show-ref --verify refs/tags/TAG_F1_1 &&
        ) &&
        (
                cd "$cli" &&