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

From: Johannes Sixt <[email-masked]>
Date: Wed, 08 Jun 2011 08:22:36 +0200

Am 6/7/2011 15:43, schrieb Alex Riesen:
> Use the same test and prerequisite as introduced in similar
> fix in 650af7ae8bdf92bd92df2.
> 
> Signed-off-by: Alex Riesen <[email-masked]>
> ---
> 
> 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