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

Re: [PATCH v4] tests: adjust whitespace in chainlint expectations

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Dec 15, 2023, 07:17 UTC
Message-ID
<CAPig+cSNZ75WSjxfJFoVPBTkv7yQpxGz1c4ugCyQRLytpNLjig@mail.gmail.com>
In-Reply-To
<fb312f559de7b99244e4c86a995250599cd9be06.1702622508.git.ps@pks.im>
On Fri, Dec 15, 2023 at 1:42 AM Patrick Steinhardt <ps@pks.im> wrote:
Show 25 quoted lines
> [...]
> Instead of improving the detection logic, fix our ".expect" files so
> that we do not need any post-processing at all anymore. This allows us
> to drop the `-w` flag when diffing so that we can always use diff(1)
> now.
>
> Note that we keep some of the post-processing of `chainlint.pl` output
> intact to strip leading line numbers generated by the script. Having
> these would cause a rippling effect whenever we add a new test that
> sorts into the middle of existing tests and would require us to
> renumerate all subsequent lines, which seems rather pointless.
>
> Signed-off-by: Patrick Steinhardt <ps@pks.im>
> ---
> diff --git a/t/Makefile b/t/Makefile
> @@ -103,20 +103,12 @@ check-chainlint:
>                 for i in $(CHAINLINTTESTS); do \
>                         echo "# chainlint: $$i" && \
> -                       sed -e '/^[     ]*$$/d' chainlint/$$i.expect; \
> +                       cat chainlint/$$i.expect; \
>                 done \
>         $(CHAINLINT) --emit-all '$(CHAINLINTTMP_SQ)'/tests | \
> -               sed -e 's/^[1-9][0-9]* //;/^[   ]*$$/d' >'$(CHAINLINTTMP_SQ)'/actual && \
> +               sed -e 's/^[1-9][0-9]* //' >'$(CHAINLINTTMP_SQ)'/actual && \
> +       diff -u '$(CHAINLINTTMP_SQ)'/expect '$(CHAINLINTTMP_SQ)'/actual
Thanks, this version looks fine. FWIW, you may consider this:
    Reviewed-by: Eric Sunshine <sunshine@sunshineco.com>
Aside: I was rather surprised to see this output from git-am when applying v4:
    Applying: tests: adjust whitespace in chainlint expectations
    .git/rebase-apply/patch:205: new blank line at EOF.
    +
    .git/rebase-apply/patch:219: new blank line at EOF.
    +
    warning: 2 lines add whitespace errors.

But upon investigating the two "test" files in question, dqstring-line-splice.test and dqstring-no-interpolate.test, I recalled that I had to play tricks to escape the single-quote context created by the Makefile when generating t/chainlinttmp/tests in order to allow chainlint.pl to see a double-quoted string. So, the abovementioned blank lines are indeed expected output from chainlint.pl given the tricks played.

Previous: Patrick SteinhardtNext: Junio C Hamano
Message 20 of 21 in “tests: prefer host Git to verify chainlint self-checks”
  1. tests: prefer host Git to verify chainlint self-checksPatrick Steinhardt, Dec 12, 2023
  2. Junio C HamanoDec 12, 2023
  3. Patrick SteinhardtDec 13, 2023
  4. Junio C HamanoDec 13, 2023
  5. Eric SunshineDec 14, 2023
  6. Patrick SteinhardtDec 14, 2023
  7. Eric SunshineDec 14, 2023
  8. Patrick SteinhardtDec 14, 2023
  9. Junio C HamanoDec 14, 2023
  10. Eric SunshineDec 14, 2023
  11. Junio C HamanoDec 14, 2023
  12. Patrick SteinhardtDec 15, 2023
  13. tests: adjust whitespace in chainlint expectationsPatrick Steinhardt, Dec 14, 2023
  14. Eric SunshineDec 14, 2023
  15. tests: adjust whitespace in chainlint expectationsPatrick Steinhardt, Dec 15, 2023
  16. Eric SunshineDec 15, 2023
  17. Patrick SteinhardtDec 15, 2023
  18. Eric SunshineDec 15, 2023
  19. tests: adjust whitespace in chainlint expectationsPatrick Steinhardt, Dec 15, 2023
  20. Eric SunshineDec 15, 2023
  21. Junio C HamanoDec 15, 2023

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.