]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
tests: Add test for empty msgstr passed to msgfilter
authorDaiki Ueno <ueno@gnu.org>
Fri, 28 Nov 2014 05:44:36 +0000 (14:44 +0900)
committerDaiki Ueno <ueno@gnu.org>
Fri, 28 Nov 2014 05:44:36 +0000 (14:44 +0900)
* msgfilter-7: New file.
* Makefile.am (TESTS): Add new test.

gettext-tools/tests/ChangeLog
gettext-tools/tests/Makefile.am
gettext-tools/tests/msgfilter-7 [new file with mode: 0755]

index cde48195fe8f6325d27e1a8e14f10ddb500a0b5e..0daf510556e99b9084e2402245c70f2d33666a5e 100644 (file)
@@ -1,3 +1,9 @@
+2014-11-28  Daiki Ueno  <ueno@gnu.org>
+
+       tests: Add test for empty msgstr passed to msgfilter
+       * msgfilter-7: New file.
+       * Makefile.am (TESTS): Add new test.
+
 2014-11-18  Daiki Ueno  <ueno@gnu.org>
 
        tests: Add test for integer overflow when reading MO file
index 910dde0a664fda2730b63afb158d55124869eb68..d4d567ef2506b7312b047af4c96679b7cd7b9e90 100644 (file)
@@ -42,7 +42,7 @@ TESTS = gettext-1 gettext-2 gettext-3 gettext-4 gettext-5 gettext-6 gettext-7 \
        msgen-1 msgen-2 msgen-3 msgen-4 \
        msgexec-1 msgexec-2 msgexec-3 msgexec-4 msgexec-5 \
        msgfilter-1 msgfilter-2 msgfilter-3 msgfilter-4 msgfilter-5 \
-       msgfilter-6 \
+       msgfilter-6 msgfilter-7 \
        msgfilter-sr-latin-1 msgfilter-quote-1 \
        msgfmt-1 msgfmt-2 msgfmt-3 msgfmt-4 msgfmt-5 msgfmt-6 msgfmt-7 \
        msgfmt-8 msgfmt-9 msgfmt-10 msgfmt-11 msgfmt-12 msgfmt-13 msgfmt-14 \
diff --git a/gettext-tools/tests/msgfilter-7 b/gettext-tools/tests/msgfilter-7
new file mode 100755 (executable)
index 0000000..8f4dbae
--- /dev/null
@@ -0,0 +1,115 @@
+#! /bin/sh
+. "${srcdir=.}/init.sh"; path_prepend_ . ../src
+
+# Test empty msgstr handling.
+# <https://savannah.gnu.org/bugs/?43720>
+
+cat <<\EOF > mfi-test7.po
+# HEADER.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Bonnie Tyler\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: married-men:4
+#, fuzzy
+msgid "The world is full of married men"
+msgstr "So viele verheiratete Männer"
+
+#: married-men:5
+msgid "with wives who never understand"
+msgstr "und ihre Frauen verstehen sie nicht"
+
+#: married-men:6
+msgid "They're looking for someone to share"
+msgstr ""
+
+# schwer zu übersetzen...
+#: married-men:7
+msgid "the excitement of a love affair"
+msgstr ""
+
+#: married-men:8
+msgid "Just as soon as they find you"
+msgstr ""
+
+#: married-men:9
+msgid "They warn you and darn you"
+msgstr ""
+
+#~ msgid "You fly on the wings of romance"
+#~ msgstr "Die Flügel der frischen Liebe heben dich zum Himmel"
+
+#, fuzzy
+#~ msgid "In the eyes of the world"
+#~ msgstr "Für die anderen"
+
+# Etwas freie Übersetzung.
+#~ msgid "You're just another crazy girl"
+#~ msgstr "bist du bloß ein verrücktes dummes Ding"
+
+#~ msgid "Who loves a married man"
+#~ msgstr "das einen verheirateten Mann liebt"
+EOF
+
+: ${MSGFILTER=msgfilter}
+LC_ALL=C ${MSGFILTER} -i mfi-test7.po -o mfi-test7.out \
+      echo testing >mfi-test7.err 2>&1
+result=$?
+cat mfi-test7.err | grep -v 'warning: Locale charset' | grep -v '^ '
+test $result = 0 || { exit 1; }
+
+cat <<\EOF > mfi-test7.ok
+# HEADER.
+#
+msgid ""
+msgstr "testing\n"
+
+#: married-men:4
+#, fuzzy
+msgid "The world is full of married men"
+msgstr "testing\n"
+
+#: married-men:5
+msgid "with wives who never understand"
+msgstr "testing\n"
+
+#: married-men:6
+msgid "They're looking for someone to share"
+msgstr "testing\n"
+
+# schwer zu übersetzen...
+#: married-men:7
+msgid "the excitement of a love affair"
+msgstr "testing\n"
+
+#: married-men:8
+msgid "Just as soon as they find you"
+msgstr "testing\n"
+
+#: married-men:9
+msgid "They warn you and darn you"
+msgstr "testing\n"
+
+#~ msgid "You fly on the wings of romance"
+#~ msgstr "testing\n"
+
+#, fuzzy
+#~ msgid "In the eyes of the world"
+#~ msgstr "testing\n"
+
+# Etwas freie Übersetzung.
+#~ msgid "You're just another crazy girl"
+#~ msgstr "testing\n"
+
+#~ msgid "Who loves a married man"
+#~ msgstr "testing\n"
+EOF
+
+: ${DIFF=diff}
+${DIFF} mfi-test7.ok mfi-test7.out
+result=$?
+
+exit $result