#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test msggrep on a PO file with contexts.

cat <<\EOF > mg-test7.po
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. A menu item
msgctxt "File|"
msgid "Open"
msgstr "Ouvrir"

#. A menu item
msgctxt "File|"
msgid "New"
msgstr "Nouveau"

#. Denote a lock's state
msgctxt "Lock state"
msgid "Open"
msgstr "Ouvert"

#. Denote a lock's state
msgctxt "Lock state"
msgid "Closed"
msgstr "Fermé"

#. A product
msgctxt "Audi"
msgid "car"
msgstr "voiture"

#. A product
msgctxt "Océ"
msgid "copier"
msgstr "photocopieur"

#~ msgid "Save As"
#~ msgstr "Enregistrer l'as"

#. A menu item
#~ msgctxt "File|"
#~ msgid "Save As"
#~ msgstr "Enregistrer sous"
EOF

: ${MSGGREP=msggrep}
LC_MESSAGES=C LC_ALL= \
${MSGGREP} -J -e "File|" -o mg-test7.tmp mg-test7.po 2> mg-test7.err
result=$?
cat mg-test7.err | grep -v 'warning: Locale charset' | grep -v '^ '
test $result = 0 || { Exit 1; }
LC_ALL=C tr -d '\r' < mg-test7.tmp > mg-test7.out || Exit 1

cat <<\EOF > mg-test7.ok
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. A menu item
msgctxt "File|"
msgid "Open"
msgstr "Ouvrir"

#. A menu item
msgctxt "File|"
msgid "New"
msgstr "Nouveau"

#. A menu item
#~ msgctxt "File|"
#~ msgid "Save As"
#~ msgstr "Enregistrer sous"
EOF

: ${DIFF=diff}
${DIFF} mg-test7.ok mg-test7.out
result=$?

exit $result
