aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2017-02-23 21:47:17 +0100
committerDan Fandrich <dan@coneharvesters.com>2017-02-23 23:14:00 +0100
commitecd1d020abdae3c3ce3643ddab3106501e62e7c0 (patch)
tree2e6710f53929750f22c119c7e3f84c4069e66211
parent93cce2489db9289e17a4daaa58483d7bd94afffe (diff)
tests: use consistent environment variables for setting charset
Character set in POSIX is set by the locale defined (in decreasing order of precedence) by the LC_ALL, LC_CTYPE and LANG environment variables (I believe CHARSET is only historic). LC_ALL is cleared to ensure that LC_CTYPE takes effect, but LC_ALL is not used to set the locale to ensure that other parts of the locale aren't overriden, if set. Since there doesn't seem to be a cross-platform way of specifying a UTF-8 locale, and not all systems may support UTF-8, a <precheck> is used (where relevant) to skip the test if UTF-8 isn't in use. Test 1035 was also converted to UTF-8 for consistency, as the actual character set used there is irrelevant to the test.
-rw-r--r--tests/data/test10345
-rw-r--r--tests/data/test103512
-rw-r--r--tests/data/test1656
-rw-r--r--tests/data/test20466
-rw-r--r--tests/data/test20476
5 files changed, 28 insertions, 7 deletions
diff --git a/tests/data/test1034 b/tests/data/test1034
index c47574051..4bddf59bb 100644
--- a/tests/data/test1034
+++ b/tests/data/test1034
@@ -33,7 +33,12 @@ idn
</features>
<setenv>
CHARSET=UTF-8
+LC_ALL=
+LC_CTYPE=UTF-8
</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
<name>
HTTP over proxy with malformatted IDN host name
</name>
diff --git a/tests/data/test1035 b/tests/data/test1035
index 05172ec9a..1be22a84a 100644
--- a/tests/data/test1035
+++ b/tests/data/test1035
@@ -33,13 +33,17 @@ idn
</features>
<setenv>
CHARSET=UTF-8
-LANG=en_US.UTF-8
+LC_ALL=
+LC_CTYPE=UTF-8
</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
<name>
HTTP over proxy with too long IDN host name
</name>
<command>
-http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 -x %HOSTIP:%HTTPPORT
+http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 -x %HOSTIP:%HTTPPORT
</command>
</client>
@@ -50,8 +54,8 @@ http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035
^User-Agent:.*
</strip>
<protocol>
-GET http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 HTTP/1.1
-Host: too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local
+GET http://too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local/page/1035 HTTP/1.1
+Host: too-long-IDN-name-cürl-rüles-la-la-la-dee-da-flooby-nooby.local
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test165 b/tests/data/test165
index 6fc0ad2d5..4d48c0c65 100644
--- a/tests/data/test165
+++ b/tests/data/test165
@@ -32,8 +32,12 @@ idn
</features>
<setenv>
CHARSET=UTF-8
-LANG=en_US.UTF-8
+LC_ALL=
+LC_CTYPE=UTF-8
</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
<name>
HTTP over proxy with IDN host name
</name>
diff --git a/tests/data/test2046 b/tests/data/test2046
index 0f0eb52c6..135c4dac9 100644
--- a/tests/data/test2046
+++ b/tests/data/test2046
@@ -42,8 +42,12 @@ idn
</features>
<setenv>
CHARSET=UTF-8
-LANG=en_US.UTF-8
+LC_ALL=
+LC_CTYPE=UTF-8
</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
<name>
Connection re-use with IDN host name
</name>
diff --git a/tests/data/test2047 b/tests/data/test2047
index f54a30af6..e5c122d1b 100644
--- a/tests/data/test2047
+++ b/tests/data/test2047
@@ -43,8 +43,12 @@ idn
</features>
<setenv>
CHARSET=UTF-8
-LANG=en_US.UTF-8
+LC_ALL=
+LC_CTYPE=UTF-8
</setenv>
+<precheck>
+perl -MI18N::Langinfo=langinfo,CODESET -e 'die "Needs a UTF-8 locale" if (lc(langinfo(CODESET())) ne "utf-8");'
+</precheck>
<name>
Connection re-use with IDN host name over HTTP proxy
</name>