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

[PATCHv2 15/21] git p4 test: use test_chmod for cygwin

From
PWPete Wyckoff <pw@padd.com>
Date
Jan 27, 2013, 03:11 UTC
Message-ID
<1359256284-5660-16-git-send-email-pw@padd.com>
In-Reply-To
<1359256284-5660-1-git-send-email-pw@padd.com>

This test does a commit that is a pure mode change, submits it to p4 but causes the submit to fail. It verifies that the state in p4 as well as the client directory are both unmodified after the failed submit.

On cygwin, "chmod +x" does nothing, so use the test_chmod function to modify the index directly too.

Also on cygwin, the executable bit cannot be seen in the filesystem, so avoid that part of the test. The checks of p4 state are still valid, though.

Thanks-to: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Pete Wyckoff <pw@padd.com>
---
 t/t9815-git-p4-submit-fail.sh | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/t/t9815-git-p4-submit-fail.sh b/t/t9815-git-p4-submit-fail.sh
index d2b7b3d..1243d96 100755
--- a/t/t9815-git-p4-submit-fail.sh
+++ b/t/t9815-git-p4-submit-fail.sh
@@ -405,8 +405,8 @@ test_expect_success 'cleanup chmod after submit cancel' '
 	git p4 clone --dest="$git" //depot &&
 	(
 		cd "$git" &&
-		chmod u+x text &&
-		chmod u-x text+x &&
+		test_chmod +x text &&
+		test_chmod -x text+x &&
 		git add text text+x &&
 		git commit -m "chmod texts" &&
 		echo n | test_expect_code 1 git p4 submit
@@ -415,10 +415,13 @@ test_expect_success 'cleanup chmod after submit cancel' '
 		cd "$cli" &&
 		test_path_is_file text &&
 		! p4 fstat -T action text &&
-		stat --format=%A text | egrep ^-r-- &&
 		test_path_is_file text+x &&
 		! p4 fstat -T action text+x &&
-		stat --format=%A text+x | egrep ^-r-x
+		if test_have_prereq NOT_CYGWIN
+		then
+			stat --format=%A text | egrep ^-r-- &&
+			stat --format=%A text+x | egrep ^-r-x
+		fi
 	)
 '
 
-- 
1.8.1.1.460.g6fa8886
Previous: Pete WyckoffNext: Pete Wyckoff
Message 16 of 22 in “[PATCHv2 00/21] git p4: work on cygwin”
  1. Pete WyckoffJan 27, 2013
  2. 01/21 git p4: temp branch name should use / even on windowsPete Wyckoff, Jan 27, 2013
  3. 02/21 git p4: remove unused importsPete Wyckoff, Jan 27, 2013
  4. 03/21 git p4: generate better error message for bad depot pathPete Wyckoff, Jan 27, 2013
  5. 04/21 git p4 test: use client_view to build the initial clientPete Wyckoff, Jan 27, 2013
  6. 05/21 git p4 test: avoid loop in client_viewPete Wyckoff, Jan 27, 2013
  7. 06/21 git p4 test: use client_view in t9806Pete Wyckoff, Jan 27, 2013
  8. 07/21 git p4 test: start p4d inside its db dirPete Wyckoff, Jan 27, 2013
  9. 08/21 git p4 test: translate windows paths for cygwinPete Wyckoff, Jan 27, 2013
  10. 09/21 git p4: remove unreachable windows \r\n conversion codePete Wyckoff, Jan 27, 2013
  11. 10/21 git p4: scrub crlf for utf16 files on windowsPete Wyckoff, Jan 27, 2013
  12. 11/21 git p4 test: newline handlingPete Wyckoff, Jan 27, 2013
  13. 12/21 git p4 test: use LineEnd unix in windows tests tooPete Wyckoff, Jan 27, 2013
  14. 13/21 git p4 test: avoid wildcard * in windowsPete Wyckoff, Jan 27, 2013
  15. 14/21 git p4: cygwin p4 client does not mark read-onlyPete Wyckoff, Jan 27, 2013
  16. 15/21 git p4 test: use test_chmod for cygwinPete Wyckoff, Jan 27, 2013
  17. 16/21 git p4: disable read-only attribute before deletingPete Wyckoff, Jan 27, 2013
  18. 17/21 git p4: avoid shell when mapping usersPete Wyckoff, Jan 27, 2013
  19. 18/21 git p4: avoid shell when invoking git rev-listPete Wyckoff, Jan 27, 2013
  20. 19/21 git p4: avoid shell when invoking git config --get-allPete Wyckoff, Jan 27, 2013
  21. 20/21 git p4: avoid shell when calling git configPete Wyckoff, Jan 27, 2013
  22. 21/21 git p4: introduce gitConfigBoolPete Wyckoff, Jan 27, 2013

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.