summaryrefslogtreecommitdiffstats
path: root/gettext-tools/tests
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2013-06-25 12:24:47 +0900
committerDaiki Ueno <ueno@gnu.org>2013-06-25 12:32:39 +0900
commit1a41636f0bf3559666b3ba16fbc1c8ad28dc7a9a (patch)
tree97dfede4a881621c9ffb85255dfde1a8666c6f13 /gettext-tools/tests
parentb4697109158782e8b543f2d69aadc4b8f6b0efda (diff)
downloadexternal_gettext-1a41636f0bf3559666b3ba16fbc1c8ad28dc7a9a.zip
external_gettext-1a41636f0bf3559666b3ba16fbc1c8ad28dc7a9a.tar.gz
external_gettext-1a41636f0bf3559666b3ba16fbc1c8ad28dc7a9a.tar.bz2
Fix handling of \x and \u escape sequences in Tcl.
Diffstat (limited to 'gettext-tools/tests')
-rw-r--r--gettext-tools/tests/ChangeLog6
-rw-r--r--gettext-tools/tests/Makefile.am2
-rw-r--r--gettext-tools/tests/xgettext-tcl-459
3 files changed, 66 insertions, 1 deletions
diff --git a/gettext-tools/tests/ChangeLog b/gettext-tools/tests/ChangeLog
index 2ed5f27..f036e07 100644
--- a/gettext-tools/tests/ChangeLog
+++ b/gettext-tools/tests/ChangeLog
@@ -1,3 +1,9 @@
+2013-06-25 Daiki Ueno <ueno@gnu.org>
+
+ Fix handling of \x and \u escape sequences in Tcl.
+ * Makefile.am (TESTS): Add xgettext-tcl-4.
+ * xgettext-tcl-4: New test for escape sequences.
+
2013-06-17 Daiki Ueno <ueno@gnu.org>
* format-python-brace-1: No need to pass
diff --git a/gettext-tools/tests/Makefile.am b/gettext-tools/tests/Makefile.am
index 86263b5..37e7bbc 100644
--- a/gettext-tools/tests/Makefile.am
+++ b/gettext-tools/tests/Makefile.am
@@ -98,7 +98,7 @@ TESTS = gettext-1 gettext-2 gettext-3 gettext-4 gettext-5 gettext-6 gettext-7 \
xgettext-sh-6 \
xgettext-smalltalk-1 xgettext-smalltalk-2 \
xgettext-stringtable-1 \
- xgettext-tcl-1 xgettext-tcl-2 xgettext-tcl-3 \
+ xgettext-tcl-1 xgettext-tcl-2 xgettext-tcl-3 xgettext-tcl-4 \
xgettext-ycp-1 xgettext-ycp-2 xgettext-ycp-3 xgettext-ycp-4 \
xgettext-lua-1 xgettext-lua-2 \
xgettext-javascript-1 xgettext-javascript-2 xgettext-javascript-3 \
diff --git a/gettext-tools/tests/xgettext-tcl-4 b/gettext-tools/tests/xgettext-tcl-4
new file mode 100644
index 0000000..7893ccb
--- /dev/null
+++ b/gettext-tools/tests/xgettext-tcl-4
@@ -0,0 +1,59 @@
+#!/bin/sh
+
+# Test of Tcl support: escape sequences.
+
+tmpfiles=""
+trap 'rm -fr $tmpfiles' 1 2 3 15
+
+tmpfiles="$tmpfiles xg-t-4.tcl"
+cat <<\EOF > xg-t-4.tcl
+puts [_ "Hello\u200e\u201cWorld\u201d"]
+puts [_ "x\u20y\x20z"]
+puts [_ "\xFF20"]
+EOF
+
+tmpfiles="$tmpfiles xg-t-4.err xg-t-4.tmp xg-t-4.pot"
+: ${XGETTEXT=xgettext}
+${XGETTEXT} --add-comments --no-location -k_ -o xg-t-4.tmp xg-t-4.tcl 2>xg-t-4.err
+test $? = 0 || { cat xg-t-4.err; rm -fr $tmpfiles; exit 1; }
+# Don't simplify this to "grep ... < xg-t-4.tmp", otherwise OpenBSD 4.0 grep
+# only outputs "Binary file (standard input) matches".
+cat xg-t-4.tmp | grep -v 'POT-Creation-Date' | LC_ALL=C tr -d '\r' > xg-t-4.pot
+
+tmpfiles="$tmpfiles xg-t-4.ok"
+cat <<\EOF > xg-t-4.ok
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+msgid "Hello‎“World”"
+msgstr ""
+
+msgid "x y z"
+msgstr ""
+
+msgid " "
+msgstr ""
+EOF
+
+: ${DIFF=diff}
+${DIFF} xg-t-4.ok xg-t-4.pot
+result=$?
+
+rm -fr $tmpfiles
+
+exit $result