Re: [PATCH v2 08/10] fetch tests: add a test clobbering tag behavior
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 31, 2018, 17:48 UTC
- Message-ID
- <xmqq4lgfcn5a.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <20180731130718.25222-9-avarab@gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
Show 41 quoted lines
> The test suite only incidentally (and unintentionally) tested for the
> current behavior of eager tag clobbering on "fetch". This follow-up to
> the previous "push tests: assert re-pushing annotated tags" change
> tests for it explicitly.
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
> t/t5516-fetch-push.sh | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh
> index 1331a8de08..8912312be7 100755
> --- a/t/t5516-fetch-push.sh
> +++ b/t/t5516-fetch-push.sh
> @@ -1011,6 +1011,30 @@ test_force_push_tag () {
> test_force_push_tag "lightweight tag" "-f"
> test_force_push_tag "annotated tag" "-f -a -m'msg'"
>
> +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 Tag &&
> + git -C ../child1 fetch origin tag Tag &&
> + >file1 &&
> + git add file1 &&
> + git commit -m 'file1' &&
> + git tag $tag_args Tag &&
> + git -C ../child1 fetch origin tag Tag
> + )
> + "
> +}
> +
> +test_force_fetch_tag "lightweight tag" "-f"
> +test_force_fetch_tag "annotated tag" "-f -a -m'msg'"I do not think that the single quotes around msg on the second one does what you want them to. In "git tag $tag_args Tag" there is no eval. You have the same for the push side, which can be seen in the precontext of this hunk.
I somehow thought that you switched to using testTag for some reason in an earlier step. Shouldn't we be calling this Tag also testTag?
> + > test_expect_success 'push --porcelain' ' > mk_empty testrepo && > echo >.git/foo "To testrepo" &&