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

Re: Three t4150 tests does not work as expected

From
Junio C Hamano <gitster@pobox.com>
Date
May 17, 2024, 17:55 UTC
Message-ID
<xmqqcypkiaqy.fsf@gitster.g>
In-Reply-To
<ZkeJx97qdLoaC2H-@telcontar>
Marcel Telka <marcel@telka.sk> writes:
> All of them does something like:
>
> 	git show HEAD --format="%B" >actual
> 	grep -f actual expected

Wow, these commands look nonsensical in as many counts as there are lines in there X-< [*].

It seems that they came from two patches, namely
 7c096b8d (am: support --empty=<option> to handle empty patches, 2021-12-09)
 9e7e41bf (am: support --allow-empty to record specific empty patches, 2021-12-09)

Most likely the author of these lines were confused and meant to use test_cmp (which by the way should always compare actual against expect, i.e. "test_cmp expect actual", because when the actual output differs, that is the order of the diff we want to see in the output to diagnose the breakage). I especially suspect that the author did not mean "read patterns from this file", but was confused to think that 'f' implies "match literally" somehow (the correct spelling of that fixed-strings option is -F but still it does the wrong thing reading from the file---it does not even ensure that all patterns listed in the file matches).

I am not saying (as I did not check) that doing just "grep -f A B" -> "test_cmp B A" woudl make things work. I do not think I trust that these tests added by the same patch have a sane expectations X-<. The outcome these tests try to verify may also need to be corrected.

[Footnote] 
 * To start with, any dashed option like --format=%B should come
   before a revision argument HEAD.  There are many other
   antipatterns in this test script, which should be cleaned up.
Previous: Marcel Telka
Message 2 of 2 in “Three t4150 tests does not work as expected”
  1. Marcel TelkaMay 17, 2024
  2. Junio C HamanoMay 17, 2024

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.