public inbox for git@vger.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: [PATCH 00/11] detect misspelt test_expect_success and friends
Date: Tue, 24 Mar 2026 23:21:03 -0700	[thread overview]
Message-ID: <20260325062114.2067946-1-gitster@pobox.com> (raw)

Recently we saw an unusual typo in a test that misspelt
"test_expect_success", but this was not noticed for a while
primarily because the test script itself did not fail due to this
typo.  The shell and the test framework did say

    tXXXX-xxx.sh: line 22: test_expect_successo: command not found

but otherwise kept going.

One way to help us detect such an error is to run our test under
"set -e", which will abort execution after any command exits with
non-zero status.

However, there are a handful of places in our existing tests and the
test framework itself that depends on the current behaviour of
silently ignoring a failing command.  Here is an attempt to fix them.

The first step turns "set -e" on very early in the test framework,
and fixes one place in the framework that assumed that a failing
command is OK.

The remainder of the series fix one test script per one patch, and
at the end of the series, the whole test suite pass for me, even
when merged to the tip of 'seen'.

Note that I let cvs, svn, and p4 tests run only up to the point that
they decide to punt due to lack of external tools and language
bindings they require, so for those of you who do have the necessary
bindings, the scripts may still fail due to construct that are not
"set -e" clean after they call "test_done" for me.

 01/11: test-lib: catch misspelt 'test_expect_successo'
 02/11: t0008: make test "set -e" clean
 03/11: t6002: make test "set -e" clean
 04/11: t4032: make test "set -e" clean
 05/11: t7450: make test "set -e" clean
 06/11: tests: make svn test "set -e" clean
 07/11: t7508: make test "set -e" clean
 08/11: t9200: make test "set -e" clean
 09/11: t940?: make test "set -e" clean
 10/11: t5570: make test "set -e" clean
 11/11: t9902: make test "set -e" clean

 t/lib-git-daemon.sh                | 6 +++---
 t/lib-git-svn.sh                   | 7 +++----
 t/t0008-ignores.sh                 | 2 +-
 t/t4032-diff-inter-hunk-context.sh | 4 ++--
 t/t6002-rev-list-bisect.sh         | 4 ++--
 t/t7450-bad-git-dotfiles.sh        | 2 +-
 t/t7508-status.sh                  | 4 ++--
 t/t9200-git-cvsexportcommit.sh     | 4 ++--
 t/t9400-git-cvsserver-server.sh    | 4 ++--
 t/t9401-git-cvsserver-crlf.sh      | 4 ++--
 t/t9402-git-cvsserver-refs.sh      | 4 ++--
 t/t9902-completion.sh              | 2 +-
 t/test-lib.sh                      | 7 +++++--
 13 files changed, 28 insertions(+), 26 deletions(-)

-- 
2.53.0-886-g529cbd14ff


             reply	other threads:[~2026-03-25  6:21 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-25  6:21 Junio C Hamano [this message]
2026-03-25  6:21 ` [PATCH 01/11] test-lib: catch misspelt 'test_expect_successo' Junio C Hamano
2026-03-26  4:08   ` Jeff King
2026-03-26 14:27     ` Junio C Hamano
2026-03-26 17:29       ` Jeff King
2026-03-27  7:53         ` Patrick Steinhardt
2026-03-27 18:11           ` Junio C Hamano
2026-03-25  6:21 ` [PATCH 02/11] t0008: make test "set -e" clean Junio C Hamano
2026-03-25  6:21 ` [PATCH 03/11] t6002: " Junio C Hamano
2026-03-25  7:15   ` Patrick Steinhardt
2026-03-25 15:45     ` Junio C Hamano
2026-03-25  6:21 ` [PATCH 04/11] t4032: " Junio C Hamano
2026-03-25  7:15   ` Patrick Steinhardt
2026-03-25  6:21 ` [PATCH 05/11] t7450: " Junio C Hamano
2026-03-25  7:15   ` Patrick Steinhardt
2026-03-25  6:21 ` [PATCH 06/11] tests: make svn " Junio C Hamano
2026-03-25  7:15   ` Patrick Steinhardt
2026-03-25  6:21 ` [PATCH 07/11] t7508: make " Junio C Hamano
2026-03-25  6:21 ` [PATCH 08/11] t9200: " Junio C Hamano
2026-03-25  7:16   ` Patrick Steinhardt
2026-03-25  6:21 ` [PATCH 09/11] t940?: " Junio C Hamano
2026-03-25  6:21 ` [PATCH 10/11] t5570: " Junio C Hamano
2026-03-25  7:16   ` Patrick Steinhardt
2026-03-25 15:50     ` Junio C Hamano
2026-03-25  6:21 ` [PATCH 11/11] t9902: " Junio C Hamano
2026-03-25  7:08 ` [PATCH 00/11] detect misspelt test_expect_success and friends Patrick Steinhardt
2026-03-25 13:47   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260325062114.2067946-1-gitster@pobox.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox