blob: ec3faaf5b9e1cd98d603582ec981d5752646edcd [file] [log] [blame]
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src
# Test that the msgmerge output is stable under an 'msgcat' invocation.
# Also test what happens with the 'c-format' flag during msgmerge.
cat <<\EOF > mm-test28.po
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr "Warnung: schlechter Kontext für das Singular-Argument des Schlüsselwortes »%.*s«"
#, c-format
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr "Warnung: missratener Kontext für das Singular-Argument des Schlüsselworts »%.*s«"
msgid "warning: abstruse context for plural argument of keyword '%.*s'"
msgstr "Warnung: abstruser Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
#, c-format
msgid "warning: missing context for plural argument of keyword '%.*s'"
msgstr "Warnung: fehlender Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
EOF
cat <<\EOF > mm-test28-1.pot
#, 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"
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
#, c-format
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
EOF
: ${MSGMERGE=msgmerge}
${MSGMERGE} -q -o mm-test28.tmp.po mm-test28.po mm-test28-1.pot || Exit 1
LC_ALL=C tr -d '\r' < mm-test28.tmp.po > mm-test28.new.po || Exit 1
: ${MSGCAT=msgcat}
${MSGCAT} mm-test28.new.po > mm-test28.tmp.po || Exit 1
LC_ALL=C tr -d '\r' < mm-test28.tmp.po > mm-test28.cat.po || Exit 1
: ${DIFF=diff}
${DIFF} mm-test28.new.po mm-test28.cat.po || Exit 1
cat <<\EOF > mm-test28-1.ok
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: \n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: schlechter Kontext für das Singular-Argument des Schlüsselwortes »%."
"*s«"
#, c-format
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: missratener Kontext für das Singular-Argument des Schlüsselworts "
"»%.*s«"
#~ msgid "warning: abstruse context for plural argument of keyword '%.*s'"
#~ msgstr ""
#~ "Warnung: abstruser Kontext für das Plural-Argument des Schlüsselwortes »%."
#~ "*s«"
#, c-format
#~ msgid "warning: missing context for plural argument of keyword '%.*s'"
#~ msgstr ""
#~ "Warnung: fehlender Kontext für das Plural-Argument des Schlüsselwortes "
#~ "»%.*s«"
EOF
: ${DIFF=diff}
${DIFF} mm-test28-1.ok mm-test28.new.po || Exit 1
# Now test what happens with the 'c-format' flag when merging with a POT file
# where the 'c-format' flag is set.
cat <<\EOF > mm-test28-2.pot
#, 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"
#, c-format
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
#, c-format
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
#, c-format
msgid "warning: abstruse context for plural argument of keyword '%.*s'"
msgstr ""
#, c-format
msgid "warning: missing context for plural argument of keyword '%.*s'"
msgstr ""
EOF
: ${MSGMERGE=msgmerge}
${MSGMERGE} -q -o mm-test28.tmp.po mm-test28.new.po mm-test28-2.pot || Exit 1
LC_ALL=C tr -d '\r' < mm-test28.tmp.po > mm-test28-2.po || Exit 1
cat <<\EOF > mm-test28-2.ok
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: \n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#, c-format
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: schlechter Kontext für das Singular-Argument des Schlüsselwortes "
"»%.*s«"
#, c-format
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: missratener Kontext für das Singular-Argument des Schlüsselworts "
"»%.*s«"
#, c-format
msgid "warning: abstruse context for plural argument of keyword '%.*s'"
msgstr ""
"Warnung: abstruser Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
#, c-format
msgid "warning: missing context for plural argument of keyword '%.*s'"
msgstr ""
"Warnung: fehlender Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
EOF
: ${DIFF=diff}
${DIFF} mm-test28-2.ok mm-test28-2.po || Exit 1
# Now test what happens with the 'c-format' flag when merging with a POT file
# where the 'c-format' flag is absent.
cat <<\EOF > mm-test28-3.pot
#, 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"
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
msgid "warning: abstruse context for plural argument of keyword '%.*s'"
msgstr ""
msgid "warning: missing context for plural argument of keyword '%.*s'"
msgstr ""
EOF
: ${MSGMERGE=msgmerge}
${MSGMERGE} -q -o mm-test28.tmp.po mm-test28.new.po mm-test28-3.pot || Exit 1
LC_ALL=C tr -d '\r' < mm-test28.tmp.po > mm-test28-3.po || Exit 1
cat <<\EOF > mm-test28-3.ok
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: \n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "warning: bad context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: schlechter Kontext für das Singular-Argument des Schlüsselwortes »%."
"*s«"
msgid "warning: broken context for singular argument of keyword '%.*s'"
msgstr ""
"Warnung: missratener Kontext für das Singular-Argument des Schlüsselworts »%."
"*s«"
msgid "warning: abstruse context for plural argument of keyword '%.*s'"
msgstr ""
"Warnung: abstruser Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
msgid "warning: missing context for plural argument of keyword '%.*s'"
msgstr ""
"Warnung: fehlender Kontext für das Plural-Argument des Schlüsselwortes »%.*s«"
EOF
: ${DIFF=diff}
${DIFF} mm-test28-3.ok mm-test28-3.po || Exit 1
Exit 0