summaryrefslogtreecommitdiffstats
path: root/gettext-tools/tests/gettext-3
diff options
context:
space:
mode:
authorBruno Haible <bruno@clisp.org>2005-04-29 17:42:01 +0000
committerBruno Haible <bruno@clisp.org>2009-06-23 12:12:31 +0200
commita11457526f4aa6a0d51b2a910301fcda23da178f (patch)
tree8f7940ac09e090ea8048783d97c55740d6ff6048 /gettext-tools/tests/gettext-3
parentf78941014cd738d5b1ea451f7bd78e11f1c2fa0f (diff)
downloadexternal_gettext-a11457526f4aa6a0d51b2a910301fcda23da178f.zip
external_gettext-a11457526f4aa6a0d51b2a910301fcda23da178f.tar.gz
external_gettext-a11457526f4aa6a0d51b2a910301fcda23da178f.tar.bz2
Test that on glibc systems, gettext() works right even with intermediate
setlocale() calls.
Diffstat (limited to 'gettext-tools/tests/gettext-3')
-rwxr-xr-xgettext-tools/tests/gettext-344
1 files changed, 44 insertions, 0 deletions
diff --git a/gettext-tools/tests/gettext-3 b/gettext-tools/tests/gettext-3
new file mode 100755
index 0000000..b45f5ce
--- /dev/null
+++ b/gettext-tools/tests/gettext-3
@@ -0,0 +1,44 @@
+#! /bin/sh
+
+# Test that on glibc systems, gettext() works right even with intermediate
+# setlocale() calls.
+
+tmpfiles=""
+trap 'rm -fr $tmpfiles' 1 2 3 15
+
+# This test works only on glibc systems.
+grep '@GLIBC2@.*yes' ../config.status >/dev/null || exit 77
+
+# This test works only on systems that have a de_DE and fr_FR locale installed.
+LC_ALL=de_DE ./testlocale || exit 77
+LC_ALL=fr_FR ./testlocale || exit 77
+
+tmpfiles="$tmpfiles de_DE fr_FR"
+test -d de_DE || mkdir de_DE
+test -d de_DE/LC_MESSAGES || mkdir de_DE/LC_MESSAGES
+test -d fr_FR || mkdir fr_FR
+test -d fr_FR/LC_MESSAGES || mkdir fr_FR/LC_MESSAGES
+
+: ${MSGFMT=msgfmt}
+${MSGFMT} -o de_DE/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-1.po
+${MSGFMT} -o fr_FR/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-2.po
+
+tmpfiles="$tmpfiles gt-3.ok"
+cat <<EOF > gt-3.ok
+String1 - Lang1: 1st string
+String2 - Lang1: 2nd string
+String1 - Lang2: 1st string
+String2 - Lang2: 2nd string
+String1 - First string for testing.
+String2 - Another string for testing.
+EOF
+
+tmpfiles="$tmpfiles gt-3.out"
+./gettext-3-prg > gt-3.out || exit 1
+
+: ${DIFF=diff}
+${DIFF} gt-3.ok gt-3.out || exit 1
+
+rm -fr $tmpfiles
+
+exit 0