git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v1 1/2] t: increase test coverage of signature verification output

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Mar 14, 2020, 23:25 UTC
Message-ID
<nycvar.QRO.7.76.6.2003150020010.46@tvgsbejvaqbjf.bet>
In-Reply-To
<20200304114804.19108-2-hji@dyntopia.com>
Hi Hans,

I was wondering why your patches made the CI/PR builds fail on macOS and Windows. This was a pretty hard thing to figure out, see below:

On Wed, 4 Mar 2020, Hans Jerry Illikainen wrote:
Show 17 quoted lines
> diff --git a/t/t6200-fmt-merge-msg.sh b/t/t6200-fmt-merge-msg.sh
> index 8a72b4c43a..1922c1c42e 100755
> --- a/t/t6200-fmt-merge-msg.sh
> +++ b/t/t6200-fmt-merge-msg.sh
> @@ -6,6 +6,7 @@
>  test_description='fmt-merge-msg test'
>
>  . ./test-lib.sh
> +. "$TEST_DIRECTORY/lib-gpg.sh"
>
>  test_expect_success setup '
>  	echo one >one &&
> @@ -73,6 +74,10 @@ test_expect_success setup '
>  	apos="'\''"
>  '
>
> +test_expect_success GPG '

For developers who are very familiar with Git's test suite, it is really hard to spot what is wrong with this line, and I was fooled for quite a few days, too.

The thing is that this `GPG` looks like an innocent prereq and it is correct: this test case really depends on GPG being present and working.

But it is not a prereq.

This is used as the _title_ of the test case. And on the macOS/Windows agents, the GPG prereq is not met.

The reason is that this `test_expect_success` call only receives two arguments, so it does not interpret the first one as a prereq. But I think that this `GPG` was actually intended as a prereq, so the test case's title is missing.

Could you kindly change this patch so that it adds a title, e.g. `set up signed tag`?

That should let the CI build pass again.

Thank you, Dscho

Show 36 quoted lines
> +	git tag -s -m signed-tag-msg signed-good-tag left
> +'
> +
>  test_expect_success 'message for merging local branch' '
>  	echo "Merge branch ${apos}left${apos}" >expected &&
>
> @@ -83,6 +88,24 @@ test_expect_success 'message for merging local branch' '
>  	test_cmp expected actual
>  '
>
> +test_expect_success GPG 'message for merging local tag signed by good key' '
> +	git checkout master &&
> +	git fetch . signed-good-tag &&
> +	git fmt-merge-msg <.git/FETCH_HEAD >actual 2>&1 &&
> +	grep "^Merge tag ${apos}signed-good-tag${apos}" actual &&
> +	grep "^# gpg: Signature made" actual &&
> +	grep "^# gpg: Good signature from" actual
> +'
> +
> +test_expect_success GPG 'message for merging local tag signed by unknown key' '
> +	git checkout master &&
> +	git fetch . signed-good-tag &&
> +	GNUPGHOME=. git fmt-merge-msg <.git/FETCH_HEAD >actual 2>&1 &&
> +	grep "^Merge tag ${apos}signed-good-tag${apos}" actual &&
> +	grep "^# gpg: Signature made" actual &&
> +	grep "^# gpg: Can${apos}t check signature: \(public key not found\|No public key\)" actual
> +'
> +
>  test_expect_success 'message for merging external branch' '
>  	echo "Merge branch ${apos}left${apos} of $(pwd)" >expected &&
>
> --
> 2.25.1.709.g558d21736a
>
>
>
Previous: Hans Jerry IllikainenNext: Junio C Hamano
Message 6 of 10 in “gpg-interface: prefer check_signature() for GPG verification”
  1. 0/1 gpg-interface: prefer check_signature() for GPG verificationHans Jerry Illikainen, Nov 27, 2019
  2. 1/1 gpg-interface: prefer check_signature() for GPG verificationHans Jerry Illikainen, Nov 27, 2019
  3. Junio C HamanoNov 30, 2019
  4. 0/2 gpg-interface: prefer check_signature() for GPG verificationHans Jerry Illikainen, Mar 4, 2020
  5. 1/2 t: increase test coverage of signature verification outputHans Jerry Illikainen, Mar 4, 2020
  6. Johannes SchindelinMar 14, 2020
  7. Junio C HamanoMar 15, 2020
  8. 2/2 gpg-interface: prefer check_signature() for GPG verificationHans Jerry Illikainen, Mar 4, 2020
  9. Junio C HamanoMar 5, 2020
  10. Johannes SchindelinMar 6, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.