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

Re: [PATCH 13/16] t3700: Skip a test with backslashes in pathspec

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 21, 2009, 23:14 UTC
Message-ID
<7v3ad6cvub.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<6acd113f60d1b0e7926386f3aebe5d72ad362034.1237667830.git.j6t@kdbg.org>
Johannes Sixt <j6t@kdbg.org> writes:
Show 19 quoted lines
> Signed-off-by: Johannes Sixt <j6t@kdbg.org>
> ---
>  t/t3700-add.sh |    2 +-
>  t/test-lib.sh  |    2 ++
>  2 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/t/t3700-add.sh b/t/t3700-add.sh
> index dc17d9f..050de42 100755
> --- a/t/t3700-add.sh
> +++ b/t/t3700-add.sh
> @@ -222,7 +222,7 @@ test_expect_success POSIXPERM 'git add (add.ignore-errors = false)' '
>  	! ( git ls-files foo1 | grep foo1 )
>  '
>  
> -test_expect_success 'git add '\''fo\[ou\]bar'\'' ignores foobar' '
> +test_expect_success BSLASHPSPEC "git add 'fo\\[ou\\]bar' ignores foobar" '
>  	git reset --hard &&
>  	touch fo\[ou\]bar foobar &&
>  	git add '\''fo\[ou\]bar'\'' &&
I do not think the justification for this change is explained well enough.

The test prepares a file whose name consists of "ef, oh, bra, oh, you, ket, bee, ei and are" (no backslashes), and passes a filespec that quotes bra and ket with backslash so glob won't misinterpret as if we are asking to add "ef oh followed by either oh or you followed by bee ei are". There is no path that has a backslash in it involved.

If this does not work on Windows, there is something else going on. Is it that the shell eats one level of backslash too much or something?

Previous: Johannes SixtNext: Johannes Sixt
Message 17 of 23 in “Tests on Windows - main part”
  1. 00/16 Tests on Windows - main partJohannes Sixt, Mar 21, 2009
  2. 01/16 test-lib: Work around incompatible sort and find on WindowsJohannes Sixt, Mar 21, 2009
  3. 02/16 test-lib: Work around missing sum on WindowsJohannes Sixt, Mar 21, 2009
  4. 03/16 Tests on Windows: $(pwd) must return Windows-style pathsJohannes Sixt, Mar 21, 2009
  5. 04/16 t0050: Check whether git init detected symbolic link support correctlyJohannes Sixt, Mar 21, 2009
  6. 05/16 test-lib: Infrastructure to test and check for prerequisitesJohannes Sixt, Mar 21, 2009
  7. Junio C HamanoMar 21, 2009
  8. 06/16 t3600: Use test prerequisite tagsJohannes Sixt, Mar 21, 2009
  9. Junio C HamanoMar 21, 2009
  10. 07/16 Skip tests that fail if the executable bit is not handled by the filesystemJohannes Sixt, Mar 21, 2009
  11. 08/16 t5302: Use prerequisite tags to skip 64-bit offset testsJohannes Sixt, Mar 21, 2009
  12. 09/16 t9100, t9129: Use prerequisite tags for UTF-8 testsJohannes Sixt, Mar 21, 2009
  13. 10/16 Use prerequisite tags to skip tests that depend on symbolic linksJohannes Sixt, Mar 21, 2009
  14. 11/16 t0060: Fix tests on WindowsJohannes Sixt, Mar 21, 2009
  15. 12/16 Skip tests that require a filesystem that obeys POSIX permissionsJohannes Sixt, Mar 21, 2009
  16. 13/16 t3700: Skip a test with backslashes in pathspecJohannes Sixt, Mar 21, 2009
  17. Junio C HamanoMar 21, 2009
  18. Johannes SixtMar 22, 2009
  19. Junio C HamanoMar 22, 2009
  20. 14/16 Use prerequisites to skip tests that need unzipJohannes Sixt, Mar 21, 2009
  21. 15/16 t7004: Use prerequisite tags to skip tests that need gpgJohannes Sixt, Mar 21, 2009
  22. 16/16 t5503: GIT_DEBUG_SEND_PACK is not supported on MinGWJohannes Sixt, Mar 21, 2009
  23. Johannes SixtMar 21, 2009

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.