fetch tests: add a test for clobbering tag behavior
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Fri, 31 Aug 2018 20:09:59 +0000 (20:09 +0000)
committerJunio C Hamano <gitster@pobox.com>
Fri, 31 Aug 2018 21:04:06 +0000 (14:04 -0700)
The test suite only incidentally (and unintentionally) tested for the
current behavior of eager tag clobbering on "fetch". This is a
followup to 380efb65df ("push tests: assert re-pushing annotated
tags", 2018-07-31) which tests for it explicitly.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t5516-fetch-push.sh
index 5023908ef427925147149af553c8c9c5164d1fee..a2d4f375fc38f0cae255af4c06d17e51221914fa 100755 (executable)
@@ -1011,6 +1011,30 @@ test_force_push_tag () {
 test_force_push_tag "lightweight tag" "-f"
 test_force_push_tag "annotated tag" "-f -a -m'tag message'"
 
+test_force_fetch_tag () {
+       tag_type_description=$1
+       tag_args=$2
+
+       test_expect_success "fetch will clobber an existing $tag_type_description" "
+               mk_test testrepo heads/master &&
+               mk_child testrepo child1 &&
+               mk_child testrepo child2 &&
+               (
+                       cd testrepo &&
+                       git tag testTag &&
+                       git -C ../child1 fetch origin tag testTag &&
+                       >file1 &&
+                       git add file1 &&
+                       git commit -m 'file1' &&
+                       git tag $tag_args testTag &&
+                       git -C ../child1 fetch origin tag testTag
+               )
+       "
+}
+
+test_force_fetch_tag "lightweight tag" "-f"
+test_force_fetch_tag "annotated tag" "-f -a -m'tag message'"
+
 test_expect_success 'push --porcelain' '
        mk_empty testrepo &&
        echo >.git/foo  "To testrepo" &&