threads / patch / 34231

patcht7400: test of UTF-8 submodule names pass under Mac OS

Subject: [PATCH] t7400: test of UTF-8 submodule names pass under Mac OS

## tl;dr

2 messages between Jun 20, 2013 and Jun 20, 2013. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Torsten Bögershausen· Jun 20, 2013, 14:58 UTC · lore

submodules with names using UTF-8 need core.precomposeunicode true under Mac OS X, set it in the TC.

Improve the portability: Not all shells on all OS may understand literal UTF-8 strings. Use a help variable filled by printf, as we do it in e.g. t0050.

"strange names" can be called UTF-8, rephrase the heading
Signed-off-by: Torsten Bögershausen <tboegi@web.de>
---
I wasn't fast enough to catch it on pu:
fg/submodule-non-ascii-path
 t/t7400-submodule-basic.sh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)
Show changes to t/t7400-submodule-basic.sh +8 −5
diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh
index 0376370..fedfa5b 100755
--- a/t/t7400-submodule-basic.sh
+++ b/t/t7400-submodule-basic.sh
@@ -889,16 +889,19 @@ test_expect_success 'submodule deinit fails when submodule has a .git directory
 	test -n "$(git config --get-regexp "submodule\.example\.")"
 '
 
-test_expect_success 'submodule with strange name works "å äö"' '
-	mkdir "å äö" &&
+svname=$(printf '\303\245 \303\244\303\266')
+test_expect_success 'submodule with UTF-8 name' '
+	mkdir "$svname" &&
 	(
-		cd "å äö" &&
+		cd "$svname" &&
 		git init &&
 		touch sub
 		git add sub
 		git commit -m "init sub"
 	)
-	git submodule add "/å äö" &&
-	test -n "$(git submodule | grep "å äö")"
+	git config core.precomposeunicode true &&
+	git submodule add /"$svname" &&
+	git submodule >&2 &&
+	test -n "$(git submodule | grep "$svname")"
 '
 test_done
-- 
1.8.3
Junio C Hamano· Jun 20, 2013, 19:01 UTC · re: Torsten Bögershausen · lore

Re: [PATCH] t7400: test of UTF-8 submodule names pass under Mac OS

Torsten Bögershausen <tboegi@web.de> writes:
> submodules with names using UTF-8 need core.precomposeunicode true
> under Mac OS X, set it in the TC.
I take that TC stands for test case?
Show 10 quoted lines
> +test_expect_success 'submodule with UTF-8 name' '
> +	mkdir "$svname" &&
>  	(
> -		cd "å äö" &&
> +		cd "$svname" &&
>  		git init &&
>  		touch sub
>  		git add sub
>  		git commit -m "init sub"
>  	)
While we are at it, let's fix this broken && chain.
> -	git submodule add "/å äö" &&
> -	test -n "$(git submodule | grep "å äö")"
> +	git config core.precomposeunicode true &&
and use test_config here.
Show 5 quoted lines
> +	git submodule add /"$svname" &&
> +	git submodule >&2 &&
> +	test -n "$(git submodule | grep "$svname")"
>  '
>  test_done
Will queue with an obvious fix-up.  Thanks for catching.
-- >8 --
From: Torsten Bögershausen <tboegi@web.de>

submodules with names using UTF-8 need core.precomposeunicode true under Mac OS X, set it in the test case.

Improve the portability:
  - Not all shells on all OS may understand literal UTF-8 strings.
  - Use a help variable filled by printf, as we do it in e.g. t0050.
"strange names" can be called UTF-8, rephrase the heading.
While at it, unbreak &&-chain in the test, and use test_config.
Signed-off-by: Torsten Bögershausen <tboegi@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 t/t7400-submodule-basic.sh | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)
Show changes to t/t7400-submodule-basic.sh +11 −8
diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh
index d5743ee..7e23421 100755
--- a/t/t7400-submodule-basic.sh
+++ b/t/t7400-submodule-basic.sh
@@ -868,16 +868,19 @@ test_expect_success 'submodule deinit fails when submodule has a .git directory
 	test -n "$(git config --get-regexp "submodule\.example\.")"
 '
 
-test_expect_success 'submodule with strange name works "å äö"' '
-	mkdir "å äö" &&
+test_expect_success 'submodule with UTF-8 name' '
+	svname=$(printf "\303\245 \303\244\303\266") &&
+	mkdir "$svname" &&
 	(
-		cd "å äö" &&
+		cd "$svname" &&
 		git init &&
-		touch sub
-		git add sub
+		>sub &&
+		git add sub &&
 		git commit -m "init sub"
-	)
-	git submodule add "/å äö" &&
-	test -n "$(git submodule | grep "å äö")"
+	) &&
+	test_config core.precomposeunicode true &&
+	git submodule add ./"$svname" &&
+	git submodule >&2 &&
+	test -n "$(git submodule | grep "$svname")"
 '
 test_done
-- 
1.8.3.1-674-g24fae08

← back to recent threads