threads / patch / 59992

patcht6300: fix setup with GPGSSH but without GPG

Subject: [PATCH] t6300: fix setup with GPGSSH but without GPG

## tl;dr

4 messages between Jul 16, 2023 and Jul 17, 2023. Diffs are folded; open one to read it.

replies: 3people: 3as markdown or json

René Scharfe· Jul 16, 2023, 08:17 UTC · lore

In a test introduced by 26c9c03f0a (ref-filter: add new "signature" atom, 2023-06-04) the file named "file" is added by a setup step that requires GPG and modified by a second setup step that requires GPGSSH. Systems lacking the first prerequisite skip the initial setup step and then "git commit -a" in the second one doesn't find the modified file. Add it explicitly.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
 t/t6300-for-each-ref.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Show changes to t/t6300-for-each-ref.sh +2 −2
diff --git a/t/t6300-for-each-ref.sh b/t/t6300-for-each-ref.sh
index 6e6ec852b5..1180c3254c 100755
--- a/t/t6300-for-each-ref.sh
+++ b/t/t6300-for-each-ref.sh
@@ -1584,7 +1584,8 @@ test_expect_success GPGSSH 'setup for signature atom using ssh' '
 	test_config user.signingkey "${GPGSSH_KEY_PRIMARY}" &&
 	echo "8" >file &&
 	test_tick &&
-	git commit -a -S -m "file: 8" &&
+	git add file &&
+	git commit -S -m "file: 8" &&
 	git tag eighth-signed-ssh
 '

--
2.41.0
Christian Couder· Jul 17, 2023, 06:33 UTC · re: René Scharfe · lore

Re: [PATCH] t6300: fix setup with GPGSSH but without GPG

On Sun, Jul 16, 2023 at 10:17 AM René Scharfe <l.s.r@web.de> wrote:
Show 7 quoted lines
>
> In a test introduced by 26c9c03f0a (ref-filter: add new "signature"
> atom, 2023-06-04) the file named "file" is added by a setup step that
> requires GPG and modified by a second setup step that requires GPGSSH.
> Systems lacking the first prerequisite skip the initial setup step and
> then "git commit -a" in the second one doesn't find the modified file.
> Add it explicitly.
Right, acked!
Thanks!
Junio C Hamano· Jul 17, 2023, 16:22 UTC · re: René Scharfe · lore

Re: [PATCH] t6300: fix setup with GPGSSH but without GPG

René Scharfe <l.s.r@web.de> writes:
Show 11 quoted lines
> In a test introduced by 26c9c03f0a (ref-filter: add new "signature"
> atom, 2023-06-04) the file named "file" is added by a setup step that
> requires GPG and modified by a second setup step that requires GPGSSH.
> Systems lacking the first prerequisite skip the initial setup step and
> then "git commit -a" in the second one doesn't find the modified file.
> Add it explicitly.
>
> Signed-off-by: René Scharfe <l.s.r@web.de>
> ---
>  t/t6300-for-each-ref.sh | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
Thanks for good eyes.

I guess a box without GPG is not so uncommon, and even such a box can reasonably be expected to have SSH on it, so I would believe if this was discovered on a real development box, but is that how you found this? Or have you invented a nice test helper that lets you pick random set of prerequisites and try permutations of having and not having them, or something nice like that?

Will queue.
Show 16 quoted lines
> diff --git a/t/t6300-for-each-ref.sh b/t/t6300-for-each-ref.sh
> index 6e6ec852b5..1180c3254c 100755
> --- a/t/t6300-for-each-ref.sh
> +++ b/t/t6300-for-each-ref.sh
> @@ -1584,7 +1584,8 @@ test_expect_success GPGSSH 'setup for signature atom using ssh' '
>  	test_config user.signingkey "${GPGSSH_KEY_PRIMARY}" &&
>  	echo "8" >file &&
>  	test_tick &&
> -	git commit -a -S -m "file: 8" &&
> +	git add file &&
> +	git commit -S -m "file: 8" &&
>  	git tag eighth-signed-ssh
>  '
>
> --
> 2.41.0
René Scharfe· Jul 17, 2023, 17:12 UTC · re: Junio C Hamano · lore

Re: [PATCH] t6300: fix setup with GPGSSH but without GPG

Am 17.07.23 um 18:22 schrieb Junio C Hamano:
Show 22 quoted lines
> René Scharfe <l.s.r@web.de> writes:
>
>> In a test introduced by 26c9c03f0a (ref-filter: add new "signature"
>> atom, 2023-06-04) the file named "file" is added by a setup step that
>> requires GPG and modified by a second setup step that requires GPGSSH.
>> Systems lacking the first prerequisite skip the initial setup step and
>> then "git commit -a" in the second one doesn't find the modified file.
>> Add it explicitly.
>>
>> Signed-off-by: René Scharfe <l.s.r@web.de>
>> ---
>>  t/t6300-for-each-ref.sh | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> Thanks for good eyes.
>
> I guess a box without GPG is not so uncommon, and even such a box
> can reasonably be expected to have SSH on it, so I would believe if
> this was discovered on a real development box, but is that how you
> found this?  Or have you invented a nice test helper that lets you
> pick random set of prerequisites and try permutations of having and
> not having them, or something nice like that?
The test actually did fail on my machine.

Running tests with all possible permutations of prerequisites would be nice, but sounds very expensive -- there must be billions of them! But there are only a few per test script, I imagine. Collecting all found prerequisites for each script and providing a way to force-disable them individually could make testing them all feasible. Nice idea!

René

← back to recent threads