#! /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 <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"
"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