From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: [PATCH 01/11] test-lib: catch misspelt 'test_expect_successo'
Date: Tue, 24 Mar 2026 23:21:04 -0700 [thread overview]
Message-ID: <20260325062114.2067946-2-gitster@pobox.com> (raw)
In-Reply-To: <20260325062114.2067946-1-gitster@pobox.com>
In order to catch mistakes like misspelling "test_expect_success",
we would like to eventually be able to run our test suite with the
"-e" option on.
All tests dot-source "test-lib.sh" as the first thing to do.
Starting the script with "set -e" immediately reveals one place in
the test framework itself that is not clean.
The test framework runs "$GIT_BINARY" without any argument. We
expect it to exit with status 1 (i.e., "git<RETURN>" that spits out
the list of common commands) as a sign that we have an instance of
Git that we want to test. We cannot quite say
git
if test $? != 1; then you have not built git; fi
as the first invocation that exits non-zero is caught with "set -e".
Work this around by rewriting the construct like so:
status=0; git || status=$?
if test $status != 1; then you have not built git; fi
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
t/test-lib.sh | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 70fd3e9baf..a2aa97fba3 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -17,6 +17,9 @@
# Test the binaries we have just built. The tests are kept in
# t/ subdirectory and are run in 'trash directory' subdirectory.
+
+set -e
+
if test -z "$TEST_DIRECTORY"
then
# ensure that TEST_DIRECTORY is an absolute path so that it
@@ -143,8 +146,8 @@ export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME
################################################################
# It appears that people try to run tests without building...
GIT_BINARY="${GIT_TEST_INSTALLED:-$GIT_BUILD_DIR}/git$X"
-"$GIT_BINARY" >/dev/null
-if test $? != 1
+status=0 && "$GIT_BINARY" >/dev/null || status=$?
+if test $status != 1
then
if test -n "$GIT_TEST_INSTALLED"
then
--
2.53.0-886-g529cbd14ff
next prev parent reply other threads:[~2026-03-25 6:21 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-25 6:21 [PATCH 00/11] detect misspelt test_expect_success and friends Junio C Hamano
2026-03-25 6:21 ` Junio C Hamano [this message]
2026-03-26 4:08 ` [PATCH 01/11] test-lib: catch misspelt 'test_expect_successo' 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-31 11:43 ` Patrick Steinhardt
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-2-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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.