From: Bruno Haible Date: Thu, 5 Oct 2006 11:18:43 +0000 (+0000) Subject: Test comparison with PO files with previous msgids. X-Git-Tag: 0.16.x-branchpoint~111 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f30d1ef1bb5a3453a4bd792962adf422318d72b3;p=thirdparty%2Fgettext.git Test comparison with PO files with previous msgids. Test --use-fuzzy option. --- diff --git a/gettext-tools/tests/msgcmp-4 b/gettext-tools/tests/msgcmp-4 new file mode 100755 index 000000000..f16fe4ab7 --- /dev/null +++ b/gettext-tools/tests/msgcmp-4 @@ -0,0 +1,165 @@ +#! /bin/sh + +# Test comparison with PO files with previous msgids. +# Test --use-fuzzy option. + +tmpfiles="" +trap 'rm -fr $tmpfiles' 1 2 3 15 + +tmpfiles="$tmpfiles mc-test4.pot" +cat <<\EOF > mc-test4.pot +# 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 , 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 \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. TRANSLATORS: An error message. +#: src/args.c:242 +#, c-format +msgid "Too many arguments." +msgstr "" + +#. TRANSLATORS: An error message. +#: src/args.c:247 +#, c-format +msgid "Too few arguments." +msgstr "" + +# Oder besser "fehlende Argumente"? +#. TRANSLATORS: An error message. +#: src/args.c:273 +#, c-format +msgid "Missing arguments." +msgstr "" +EOF + +tmpfiles="$tmpfiles mc-test4.po1" +cat <<\EOF > mc-test4.po1 +msgid "" +msgstr "" +"Report-Msgid-Bugs-To: \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. TRANSLATORS: An error message. +#: src/args.c:242 +#, fuzzy, c-format +#| msgid "too many arguments" +msgid "Too many arguments." +msgstr "zu viele Argumente" + +#. TRANSLATORS: An error message. +#: src/args.c:247 +#, fuzzy, c-format +#| msgid "too many arguments" +msgid "Too few arguments." +msgstr "zu viele Argumente" + +# Oder besser "fehlende Argumente"? +#. TRANSLATORS: An error message. +#: src/args.c:273 +#, fuzzy, c-format +#| msgid "missing arguments" +msgid "Missing arguments." +msgstr "Argumente fehlen" + +#: getopt.c:796 getopt.c:799 +#, fuzzy, c-format +#| msgid "%s: invalid option -- %c\n" +msgid "%s: illegal option -- %c\n" +msgstr "%s: ungültige Option -- %c\n" + +#: getopt.c:805 getopt.c:808 +#, c-format +msgid "%s: invalid option -- %c\n" +msgstr "%s: ungültige Option -- %c\n" +EOF + +# Verify that with fuzzies, all msgids of the POT file are covered. +tmpfiles="$tmpfiles mc-test4.out11" +: ${MSGCMP=msgcmp} +LC_MESSAGES=C LC_ALL= \ +${MSGCMP} --use-fuzzy mc-test4.po1 mc-test4.pot > mc-test4.out11 2>&1 +test $? = 0 || { rm -fr $tmpfiles; exit 1; } +if grep -v 'warning:' mc-test4.out11 > /dev/null; then + rm -fr $tmpfiles; exit 1; +fi + +# Verify that without fuzzies, not all msgids of the POT file are covered. +tmpfiles="$tmpfiles mc-test4.out12" +: ${MSGCMP=msgcmp} +LC_MESSAGES=C LC_ALL= \ +${MSGCMP} mc-test4.po1 mc-test4.pot > mc-test4.out12 2>&1 +test $? = 1 || { rm -fr $tmpfiles; exit 1; } +grep -v 'warning:' mc-test4.out12 > /dev/null +test $? = 0 || { rm -fr $tmpfiles; exit 1; } + +tmpfiles="$tmpfiles mc-test4.po2" +cat <<\EOF > mc-test4.po2 +msgid "" +msgstr "" +"Report-Msgid-Bugs-To: \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. TRANSLATORS: An error message. +#: src/args.c:242 +#, c-format +#| msgid "too many arguments" +msgid "Too many arguments." +msgstr "Zu viele Argumente." + +#. TRANSLATORS: An error message. +#: src/args.c:247 +#, c-format +#| msgid "too many arguments" +msgid "Too few arguments." +msgstr "Zu wenige Argumente." + +# Oder besser "fehlende Argumente"? +#. TRANSLATORS: An error message. +#: src/args.c:273 +#, c-format +#| msgid "missing arguments" +msgid "Missing arguments." +msgstr "Argumente fehlen." + +#: getopt.c:796 getopt.c:799 +#, fuzzy, c-format +#| msgid "%s: invalid option -- %c\n" +msgid "%s: illegal option -- %c\n" +msgstr "%s: ungültige Option -- %c\n" + +#: getopt.c:805 getopt.c:808 +#, c-format +msgid "%s: invalid option -- %c\n" +msgstr "%s: ungültige Option -- %c\n" +EOF + +# Verify that without fuzzies, all msgids of the POT file are covered. +# Verify that previous msgids are ignored even when specified on non-fuzzy +# messages. +tmpfiles="$tmpfiles mc-test4.out2" +: ${MSGCMP=msgcmp} +LC_MESSAGES=C LC_ALL= \ +${MSGCMP} mc-test4.po2 mc-test4.pot > mc-test4.out2 2>&1 +test $? = 0 || { rm -fr $tmpfiles; exit 1; } +if grep -v 'warning:' mc-test4.out2 > /dev/null; then + rm -fr $tmpfiles; exit 1; +fi + +rm -fr $tmpfiles + +exit $result