threads / patch / 35090

patchcheckout tests: enable test with complex relative path

Subject: [PATCH] checkout tests: enable test with complex relative path

## tl;dr

4 messages between Oct 9, 2013 and Oct 10, 2013. Diffs are folded; open one to read it.

replies: 3people: 2as markdown or json

Stefan Beller· Oct 9, 2013, 14:35 UTC · lore

This test was put in, but commented out in fed1b5ca (2007-11-09, git-checkout: Test for relative path use.) It's been a while since 2007 and the intended test case works now. (I could not find the enabling commit in ls-files however.)

The code in question however did not change into the sub directory, so we still need to add a 'cd'. Also a test for the file content has been added. This is already part of the other tests for checkout.

Signed-off-by: Stefan Beller <stefanbeller@googlemail.com>
---
 t/t2008-checkout-subdir.sh | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)
Show changes to t/t2008-checkout-subdir.sh +8 −7
diff --git a/t/t2008-checkout-subdir.sh b/t/t2008-checkout-subdir.sh
index 3e098ab..399655f 100755
--- a/t/t2008-checkout-subdir.sh
+++ b/t/t2008-checkout-subdir.sh
@@ -58,13 +58,14 @@ test_expect_success 'checkout with simple prefix' '
 
 '
 
-# This is not expected to work as ls-files was not designed
-# to deal with such.  Enable it when ls-files is updated.
-: test_expect_success 'checkout with complex relative path' '
-
-	rm file1 &&
-	git checkout HEAD -- ../dir1/../dir1/file1 && test -f ./file1
-
+test_expect_success 'checkout with complex relative path' '
+	(
+		cd dir1 &&
+		rm file1 &&
+		git checkout HEAD -- ../dir1/../dir1/file1 &&
+		test -f file1 &&
+		test "hello" = "$(cat file1)"
+	)
 '
 
 test_expect_success 'relative path outside tree should fail' \
-- 
1.8.4.1.471.g53f64e4.dirty
Jonathan Nieder· Oct 9, 2013, 19:39 UTC · re: Stefan Beller · lore

Re: [PATCH] checkout tests: enable test with complex relative path

Stefan Beller wrote:
> This test was put in, but commented out in fed1b5ca (2007-11-09,
> git-checkout: Test for relative path use.)
> It's been a while since 2007 and the intended test case works now.
> (I could not find the enabling commit in ls-files however.)

Bisects to v1.5.5-rc0~184^2~3 (setup: sanitize absolute and funny paths in get_pathspec(), 2008-01-28). Thanks.

Stefan Beller· Oct 10, 2013, 08:04 UTC · re: Jonathan Nieder · lore

Re: [PATCH] checkout tests: enable test with complex relative path

On 10/09/2013 09:39 PM, Jonathan Nieder wrote:
Show 10 quoted lines
> Stefan Beller wrote:
> 
>> This test was put in, but commented out in fed1b5ca (2007-11-09,
>> git-checkout: Test for relative path use.)
>> It's been a while since 2007 and the intended test case works now.
>> (I could not find the enabling commit in ls-files however.)
> 
> Bisects to v1.5.5-rc0~184^2~3 (setup: sanitize absolute and funny paths
> in get_pathspec(), 2008-01-28).  Thanks.
> 

Do you want me to resend a reworded patch, or could you amend that information to this patch?

Jonathan Nieder· Oct 10, 2013, 17:54 UTC · re: Stefan Beller · lore

Re: [PATCH] checkout tests: enable test with complex relative path

Stefan Beller wrote:
> On 10/09/2013 09:39 PM, Jonathan Nieder wrote:
>> Stefan Beller wrote:
Show 10 quoted lines
>>> This test was put in, but commented out in fed1b5ca (2007-11-09,
>>> git-checkout: Test for relative path use.)
>>> It's been a while since 2007 and the intended test case works now.
>>> (I could not find the enabling commit in ls-files however.)
>>
>> Bisects to v1.5.5-rc0~184^2~3 (setup: sanitize absolute and funny paths
>> in get_pathspec(), 2008-01-28).  Thanks.
>
> Do you want me to resend a reworded patch, or could you amend that
> information to this patch?

Added locally, along with a couple of other nits. Will push out soon, and then a sanity check on the result would be much appreciated.

← back to recent threads