Re: [PATCH] t0200: "locale" may not exist

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] t0200: "locale" may not exist

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:55:33

Jeff King [off-list ref] writes:
On Tue, Dec 18, 2012 at 10:47:03PM -0800, Junio C Hamano wrote:
quoted
On systems without "locale" installed, t0200-gettext-basic.sh leaked
error messages when checking if some test locales are available.
Hide them, as they are not very useful.
Obviously correct, though there is another way:
quoted
diff --git a/t/lib-gettext.sh b/t/lib-gettext.sh
index 0f76f6c..ae8883a 100644
--- a/t/lib-gettext.sh
+++ b/t/lib-gettext.sh
@@ -14,12 +14,14 @@ export GIT_TEXTDOMAINDIR GIT_PO_PATH
 if test_have_prereq GETTEXT && ! test_have_prereq GETTEXT_POISON
If we turn this line into:

  test_expect_success GETTEXT,!GETTEXT_POISON 'setup locale' '

then people can see the error output of the setup step in verbose mode.
Ok, so it was not obviously "correct" after all ;-)
+test_expect_success GETTEXT,!GETTEXT_POISON 'setup locale' '
 	# is_IS.UTF-8 on Solaris and FreeBSD, is_IS.utf8 on Debian
-	is_IS_locale=$(locale -a | sed -n '/^is_IS\.[uU][tT][fF]-*8$/{
+	is_IS_locale=$(locale -a | sed -n "/^is_IS\.[uU][tT][fF]-*8\$/{
Do we need to do this \$?
quoted hunk
 		p
 		q
-	}')
+	}")
 	# is_IS.ISO8859-1 on Solaris and FreeBSD, is_IS.iso88591 on Debian
-	is_IS_iso_locale=$(locale -a | sed -n '/^is_IS\.[iI][sS][oO]8859-*1$/{
+	is_IS_iso_locale=$(locale -a | sed -n "/^is_IS\.[iI][sS][oO]8859-*1\$/{
 		p
 		q
-	}')
+	}")
 
 	# Export them as an environment variable so the t0202/test.pl Perl
 	# test can use it too
@@ -37,7 +36,7 @@ then
 		# Exporting for t0202/test.pl
 		GETTEXT_LOCALE=1
 		export GETTEXT_LOCALE
-		say "# lib-gettext: Found '$is_IS_locale' as an is_IS UTF-8 locale"
+		say "# lib-gettext: Found \"$is_IS_locale\" as an is_IS UTF-8 locale"
'\''?

Re: [PATCH] t0200: "locale" may not exist

From: Jeff King <hidden>
Date: 2016-06-15 22:55:33

On Wed, Dec 19, 2012 at 07:28:24AM -0800, Junio C Hamano wrote:
quoted
+test_expect_success GETTEXT,!GETTEXT_POISON 'setup locale' '
 	# is_IS.UTF-8 on Solaris and FreeBSD, is_IS.utf8 on Debian
-	is_IS_locale=$(locale -a | sed -n '/^is_IS\.[uU][tT][fF]-*8$/{
+	is_IS_locale=$(locale -a | sed -n "/^is_IS\.[uU][tT][fF]-*8\$/{
Do we need to do this \$?
I'm not sure. Sane shells leave "$/" untouched, but I do not know if we
need to be conservative.
quoted
-		say "# lib-gettext: Found '$is_IS_locale' as an is_IS UTF-8 locale"
+		say "# lib-gettext: Found \"$is_IS_locale\" as an is_IS UTF-8 locale"
'\''?
Fine by me. I do not care either way in the output, and the escaped dq
is marginally more readable in the source. But either way the source is
pretty ugly. :)

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help