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

[PATCH 1/3] tests: do not negate test_path_exists

From
Junio C Hamano <gitster@pobox.com>
Date
May 16, 2023, 02:26 UTC
Message-ID
<20230516022646.648123-2-gitster@pobox.com>
In-Reply-To
<20230516022646.648123-1-gitster@pobox.com>

As a way to assert the path 'foo' is missing, "! test_path_exists foo" a poor way to do so, as the helper is designed to complain when 'foo' is missing, but the intention of the author who used negated form was to make sure it does not exist. This does not help debugging the tests.

Use test_path_is_missing instead, which is a more appropriate helper.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 t/t4067-diff-partial-clone.sh | 4 ++--
 t/t4115-apply-symlink.sh      | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/t/t4067-diff-partial-clone.sh b/t/t4067-diff-partial-clone.sh
index f60f5cbd65..7af3a08862 100755
--- a/t/t4067-diff-partial-clone.sh
+++ b/t/t4067-diff-partial-clone.sh
@@ -151,7 +151,7 @@ test_expect_success 'diff does not fetch anything if inexact rename detection is
 
 	# Ensure no fetches.
 	GIT_TRACE_PACKET="$(pwd)/trace" git -C client diff --raw -M HEAD^ HEAD &&
-	! test_path_exists trace
+	test_path_is_missing trace
 '
 
 test_expect_success 'diff --break-rewrites fetches only if necessary, and batches blobs if it does' '
@@ -171,7 +171,7 @@ test_expect_success 'diff --break-rewrites fetches only if necessary, and batche
 
 	# Ensure no fetches.
 	GIT_TRACE_PACKET="$(pwd)/trace" git -C client diff --raw -M HEAD^ HEAD &&
-	! test_path_exists trace &&
+	test_path_is_missing trace &&
 
 	# But with --break-rewrites, ensure that there is exactly 1 negotiation
 	# by checking that there is only 1 "done" line sent. ("done" marks the
diff --git a/t/t4115-apply-symlink.sh b/t/t4115-apply-symlink.sh
index e95e6d4e7d..a22a90d552 100755
--- a/t/t4115-apply-symlink.sh
+++ b/t/t4115-apply-symlink.sh
@@ -74,7 +74,7 @@ test_expect_success SYMLINKS 'symlink escape when creating new files' '
 	error: affected file ${SQ}renamed-symlink/create-me${SQ} is beyond a symbolic link
 	EOF
 	test_cmp expected_stderr stderr &&
-	! test_path_exists .git/create-me
+	test_path_is_missing .git/create-me
 '
 
 test_expect_success SYMLINKS 'symlink escape when modifying file' '
-- 
2.41.0-rc0
Previous: Junio C HamanoNext: Eric Sunshine
Message 2 of 6 in “fix use of "! test_path_is_foo" in tests”
  1. 0/3 fix use of "! test_path_is_foo" in testsJunio C Hamano, May 16, 2023
  2. 1/3 tests: do not negate test_path_existsJunio C Hamano, May 16, 2023
  3. Eric SunshineMay 16, 2023
  4. Junio C HamanoMay 16, 2023
  5. 3/3 test: do not negate test_path_is_* to assert absenseJunio C Hamano, May 16, 2023
  6. 2/3 t2021: do not negate test_path_is_dirJunio C Hamano, May 16, 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.