git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
To: Jiang Xin <worldhello.net@gmail.com>
Cc: Git List <git@vger.kernel.org>,
	Junio C Hamano <gitster@pobox.com>,
	Jiang Xin <zhiyou.jx@alibaba-inc.com>
Subject: Re: [PATCH v2 1/3] t1301: fix wrong template dir for git-init
Date: Mon, 28 Nov 2022 14:24:33 +0100	[thread overview]
Message-ID: <221128.86edtnky39.gmgdl@evledraar.gmail.com> (raw)
In-Reply-To: <20221128130323.8914-2-worldhello.net@gmail.com>


On Mon, Nov 28 2022, Jiang Xin wrote:

> From: Jiang Xin <zhiyou.jx@alibaba-inc.com>
>
> The template dir prepared in test case "forced modes" is not used as
> expected because a wrong template dir is provided to "git init". This is
> because the $CWD for "git-init" command is a sibling directory alongside
> the template directory. Change it to the right template directory and
> add a protection test using "test_path_is_file".
>
> The wrong template directory was introduced by mistake in commit
> e1df7fe43f (init: make --template path relative to $CWD, 2019-05-10).
>
> Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com>
> ---
>  t/t1301-shared-repo.sh | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/t/t1301-shared-repo.sh b/t/t1301-shared-repo.sh
> index 93a2f91f8a..7578e75d77 100755
> --- a/t/t1301-shared-repo.sh
> +++ b/t/t1301-shared-repo.sh
> @@ -140,7 +140,8 @@ test_expect_success POSIXPERM 'forced modes' '
>  	(
>  		cd new &&
>  		umask 002 &&
> -		git init --shared=0660 --template=templates &&
> +		git init --shared=0660 --template=../templates &&
> +		test_path_is_file .git/hooks/post-update &&
>  		>frotz &&
>  		git add frotz &&
>  		git commit -a -m initial &&

This fix looks fishy to me. The code you're changing looks like it was
buggy, but this looks like it's sweeping under the rug the fact that
"templates" never did anything at this point.

So I'm not saying you should squash this in, but if you do so you'll see
that we only ever used this later.
	
	diff --git a/t/t1301-shared-repo.sh b/t/t1301-shared-repo.sh
	index d4315b5ef5a..106ccc5704e 100755
	--- a/t/t1301-shared-repo.sh
	+++ b/t/t1301-shared-repo.sh
	@@ -129,15 +129,12 @@ test_expect_success POSIXPERM 'git reflog expire honors core.sharedRepository' '
	 '
	 
	 test_expect_success POSIXPERM 'forced modes' '
	-	mkdir -p templates/hooks &&
	-	echo update-server-info >templates/hooks/post-update &&
	-	chmod +x templates/hooks/post-update &&
	 	echo : >random-file &&
	 	mkdir new &&
	 	(
	 		cd new &&
	 		umask 002 &&
	-		git init --shared=0660 --template=templates &&
	+		git init --shared=0660 &&
	 		>frotz &&
	 		git add frotz &&
	 		git commit -a -m initial &&
	@@ -181,6 +178,10 @@ test_expect_success POSIXPERM 'remote init does not use config from cwd' '
	 test_expect_success POSIXPERM 're-init respects core.sharedrepository (local)' '
	 	git config core.sharedrepository 0666 &&
	 	umask 0022 &&
	+	mkdir -p templates/hooks &&
	+	echo update-server-info >templates/hooks/post-update &&
	+	chmod +x templates/hooks/post-update &&
	+
	 	echo whatever >templates/foo &&
	 	git init --template=templates &&
	 	echo "-rw-rw-rw-" >expect &&

From a glance isn't the real fix here to adjust the "post-update hook
must be 0770" case? I.e. it's conflating "I saw the right permissions"
with "I didn't see this line at all", isn't it?

Thus if we take this squash above we're not setting up the post-update
hook at all, so it's "not broken", but if we ever screw up our test
setup again it'll be broken again...

No?

  reply	other threads:[~2022-11-28 13:28 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-27 14:51 [PATCH v1 1/4] t1301: fix wrong template dir for git-init Jiang Xin
2022-11-27 14:51 ` [PATCH v1 2/4] t1301: use test_when_finished for cleanup Jiang Xin
2022-11-28  4:11   ` Junio C Hamano
2022-11-27 14:51 ` [PATCH v1 3/4] t1301: wrap the statements in the for loop Jiang Xin
2022-11-28  4:18   ` Junio C Hamano
2022-11-28  9:43     ` Jiang Xin
2022-11-28 11:56     ` Jiang Xin
2022-11-27 14:51 ` [PATCH v1 4/4] t1301: do not change $CWD in "shared=all" test case Jiang Xin
2022-11-28  4:41   ` Junio C Hamano
2022-11-28  9:46     ` Jiang Xin
2022-11-28 13:03 ` [PATCH v2 0/3] t1301: various updates Jiang Xin
2022-11-29 13:15   ` [PATCH v3 " Jiang Xin
2022-11-29 13:15   ` [PATCH v3 1/3] t1301: fix wrong template dir for git-init Jiang Xin
2022-11-29 13:15   ` [PATCH v3 2/3] t1301: use test_when_finished for cleanup Jiang Xin
2022-11-29 13:15   ` [PATCH v3 3/3] t1301: do not change $CWD in "shared=all" test case Jiang Xin
2022-11-28 13:03 ` [PATCH v2 1/3] t1301: fix wrong template dir for git-init Jiang Xin
2022-11-28 13:24   ` Ævar Arnfjörð Bjarmason [this message]
2022-11-28 14:12     ` Jiang Xin
2022-11-28 14:21       ` Ævar Arnfjörð Bjarmason
2022-11-28 13:03 ` [PATCH v2 2/3] t1301: use test_when_finished for cleanup Jiang Xin
2022-11-28 13:03 ` [PATCH v2 3/3] t1301: do not change $CWD in "shared=all" test case Jiang Xin
2022-11-28 13:18   ` Ævar Arnfjörð Bjarmason
2022-11-28 14:29     ` Jiang Xin
2022-11-29  0:30     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=221128.86edtnky39.gmgdl@evledraar.gmail.com \
    --to=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=worldhello.net@gmail.com \
    --cc=zhiyou.jx@alibaba-inc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).