threads / patch / 27566

patcht3703: skip more tests using colons in file names on Windows

Subject: [PATCH] t3703: skip more tests using colons in file names on Windows

## tl;dr

3 messages between Jun 7, 2011 and Jun 8, 2011. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Alex Riesen· Jun 7, 2011, 13:43 UTC · lore

Use the same test and prerequisite as introduced in similar fix in 650af7ae8bdf92bd92df2.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
---

Why didn't Johannes noticed it, I wonder. The failing test was here all the time.

OTOH, I update my Windows repo very irregularly lately, may be it is the same with Johannes. Windows is just not very friendly development environment (more of a breaking environment).

 t/t3703-add-magic-pathspec.sh |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)
Show changes to t/t3703-add-magic-pathspec.sh +6 −6
diff --git a/t/t3703-add-magic-pathspec.sh b/t/t3703-add-magic-pathspec.sh
index e508246..5115de7 100755
--- a/t/t3703-add-magic-pathspec.sh
+++ b/t/t3703-add-magic-pathspec.sh
@@ -38,17 +38,17 @@ cat >expected <<EOF
 add 'sub/foo'
 EOF

-test_expect_success 'a file with the same (long) magic name exists' '
-	: >":(icase)ha" &&
-	test_must_fail git add -n ":(icase)ha" &&
-	git add -n "./:(icase)ha"
-'
-
 if mkdir ":" 2>/dev/null
 then
 	test_set_prereq COLON_DIR
 fi

+test_expect_success COLON_DIR 'a file with the same (long) magic name exists' '
+	: >":(icase)ha" &&
+	test_must_fail git add -n ":(icase)ha" &&
+	git add -n "./:(icase)ha"
+'
+
 test_expect_success COLON_DIR 'a file with the same (short) magic
name exists' '
 	: >":/bar" &&
 	test_must_fail git add -n :/bar &&
-- 
1.7.5.1.407.g53f4f


From bca3fa7df30b946841bd05d6ce7aac239721c097 Mon Sep 17 00:00:00 2001
From: Alex Riesen <raa.lkml@gmail.com>
Date: Tue, 7 Jun 2011 11:49:44 +0200
Subject: [PATCH] t3703: skip more tests using colons in file names on Windows

Use the same test and prerequisite as introduced in similar
fix in 650af7ae8bdf92bd92df2.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
---
 t/t3703-add-magic-pathspec.sh |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/t/t3703-add-magic-pathspec.sh b/t/t3703-add-magic-pathspec.sh
index e508246..5115de7 100755
--- a/t/t3703-add-magic-pathspec.sh
+++ b/t/t3703-add-magic-pathspec.sh
@@ -38,17 +38,17 @@ cat >expected <<EOF
 add 'sub/foo'
 EOF
 
-test_expect_success 'a file with the same (long) magic name exists' '
-	: >":(icase)ha" &&
-	test_must_fail git add -n ":(icase)ha" &&
-	git add -n "./:(icase)ha"
-'
-
 if mkdir ":" 2>/dev/null
 then
 	test_set_prereq COLON_DIR
 fi
 
+test_expect_success COLON_DIR 'a file with the same (long) magic name exists' '
+	: >":(icase)ha" &&
+	test_must_fail git add -n ":(icase)ha" &&
+	git add -n "./:(icase)ha"
+'
+
 test_expect_success COLON_DIR 'a file with the same (short) magic name exists' '
 	: >":/bar" &&
 	test_must_fail git add -n :/bar &&
-- 
1.7.5.1.407.g53f4f
Johannes Sixt· Jun 8, 2011, 06:22 UTC · re: Alex Riesen · lore

Re: [PATCH] t3703: skip more tests using colons in file names on Windows

Am 6/7/2011 15:43, schrieb Alex Riesen:
Show 8 quoted lines
> Use the same test and prerequisite as introduced in similar
> fix in 650af7ae8bdf92bd92df2.
> 
> Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
> ---
> 
> Why didn't Johannes noticed it, I wonder. The failing test was
> here all the time.
Good catch! Here's the explanation:
> -test_expect_success 'a file with the same (long) magic name exists' '
> -	: >":(icase)ha" &&

":foo" is the name of an alternate data stream on the current directory. Bash can successfully open and write such a "file". (But there is no way to list it, even though test -f detects its existence.)

> -	test_must_fail git add -n ":(icase)ha" &&

This 'git add' fails, either for the intended reason, or because regular directory listing functions do not detect the alternate data stream; I do not know.

> -	git add -n "./:(icase)ha"

This obviously succeeds because a regular open() call can open the alternate data stream just like any file.

Therefore, the test passes. This is on Windows XP with NTFS.
-- Hannes
Alex Riesen· Jun 8, 2011, 10:44 UTC · re: Johannes Sixt · lore

Re: [PATCH] t3703: skip more tests using colons in file names on Windows

On Wed, Jun 8, 2011 at 08:22, Johannes Sixt <j.sixt@viscovery.net> wrote:
>> -test_expect_success 'a file with the same (long) magic name exists' '
>> -     : >":(icase)ha" &&
>
> ":foo" is the name of an alternate data stream on the current directory.

Ah, right. Forgot about that "feature". For some reasons, Cygwin does not allow use of alternative data streams on "." or "" (zero-length string).

> Therefore, the test passes. This is on Windows XP with NTFS.
Same here, just under Cygwin.

← back to recent threads