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

Re: [PATCH 6/8] t9164: don't use `test_must_fail test_cmp`

From
Denton Liu <liu.denton@gmail.com>
Date
Apr 22, 2020, 08:54 UTC
Message-ID
<20200422085424.GA25366@generichostname>
In-Reply-To
<xmqqa734muw7.fsf@gitster.c.googlers.com>
Hi Junio,
On Tue, Apr 21, 2020 at 01:44:08PM -0700, Junio C Hamano wrote:
Show 38 quoted lines
> Denton Liu <liu.denton@gmail.com> writes:
> 
> > On Mon, Apr 20, 2020 at 01:09:49PM -0700, Junio C Hamano wrote:
> >> Eric Sunshine <sunshine@sunshineco.com> writes:
> >> 
> >> > On Mon, Apr 20, 2020 at 4:55 AM Denton Liu <liu.denton@gmail.com> wrote:
> >> >> The test_must_fail function should only be used for git commands since
> >> >> we assume that external commands work sanely. Since test_cmp() just
> >> >> wraps an external command, replace `test_must_fail test_cmp` with
> >> >> `! test_cmp`.
> >> >>
> >> >> Signed-off-by: Denton Liu <liu.denton@gmail.com>
> >> >> ---
> >> >> diff --git a/t/t9164-git-svn-dcommit-concurrent.sh b/t/t9164-git-svn-dcommit-concurrent.sh
> >> >> @@ -103,7 +103,7 @@ test_expect_success 'check if pre-commit hook fails' '
> >> >> -               test_must_fail svn_cmd commit -m "this commit should fail" &&
> >> >> +               ! svn_cmd commit -m "this commit should fail" &&
> >> >
> >> > Hmm, this doesn't look like 'test_cmp' mentioned in the commit message.
> >> 
> >> Yeah, the other hunk is about test_cmp and this hunk is about
> >> svn_cmd.  The stated rationale applies to both wrappers, I think.
> >> 
> >>     Subject: [PATCH 6/8] t9164: use test_must_fail only on git
> >> 
> >>     The `test_must_fail` function should only be used for git commands;
> >>     we are not in the business of catching segmentation fault by external
> >>     commands.  Shell helper functions test_cmp and svn_cmd used in this
> >>     script are wrappers around external commands, so just use `! cmd`
> >>     instead of `test_must_fail cmd`
> >> 
> >> perhaps, without any change to the code?
> >
> > Thanks, this looks good to me too.
> 
> Thanks.  
> 
> So the 4-patch test-must-fail-fix series is now complete?  Whee.

Hannes suggested that we should drop the tip commit of this series[1] and I tend to agree with him. Aside from that, though, the series is ready to go.

(I could improve 3/8 as suggested here[2] but I'll throw it in the next series instead since I'm trying to get into the habit of not adding in unrelated patches.)

[1]: https://lore.kernel.org/git/6cfa2c447e1196d6c4325aff9fac52434d10fda8.1587372771.git.liu.denton@gmail.com/ [2]: https://lore.kernel.org/git/90faeb7a-1c6a-3fc6-6410-5e264c9340e8@kdbg.org/

Previous: Junio C HamanoNext: Junio C Hamano
Message 14 of 20 in “t: replace incorrect test_must_fail usage (part 4)”
  1. 0/8 t: replace incorrect test_must_fail usage (part 4)Denton Liu, Apr 20, 2020
  2. 2/8 t7408: replace incorrect uses of test_must_failDenton Liu, Apr 20, 2020
  3. 3/8 t7508: don't use `test_must_fail test_cmp`Denton Liu, Apr 20, 2020
  4. Johannes SixtApr 21, 2020
  5. 1/8 t6030: use test_path_is_missing()Denton Liu, Apr 20, 2020
  6. 4/8 t9141: use test_path_is_missing()Denton Liu, Apr 20, 2020
  7. 5/8 t9160: use test_path_is_missing()Denton Liu, Apr 20, 2020
  8. 6/8 t9164: don't use `test_must_fail test_cmp`Denton Liu, Apr 20, 2020
  9. Eric SunshineApr 20, 2020
  10. Junio C HamanoApr 20, 2020
  11. Eric SunshineApr 20, 2020
  12. Denton LiuApr 21, 2020
  13. Junio C HamanoApr 21, 2020
  14. Denton LiuApr 22, 2020
  15. Junio C HamanoApr 22, 2020
  16. 8/8 t9902: don't use `test_must_fail __git_*`Denton Liu, Apr 20, 2020
  17. Johannes SixtApr 21, 2020
  18. Denton LiuApr 22, 2020
  19. 7/8 t9819: don't use test_must_fail with p4Denton Liu, Apr 20, 2020
  20. Derrick StoleeApr 20, 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.