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

# Test merge of common entries with --more-than=1 and --no-location.

cat <<EOF > mcomm-test9.in1
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
"POT-Creation-Date: 2000-12-11 20:49+0100\n"
"PO-Revision-Date: 2000-03-18 15:25+01:00\n"
"Last-Translator: Karl Eichwalder <ke@suse.de>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

#: first.c:123
msgid "1"
msgstr "1x"
EOF

cat <<EOF > mcomm-test9.in2
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
"POT-Creation-Date: 2000-12-11 20:49+0100\n"
"PO-Revision-Date: 2000-03-18 15:25+01:00\n"
"Last-Translator: Karl Eichwalder <ke@suse.de>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

#: hunt.c:759
msgid "1"
msgstr ""
EOF

: ${MSGCOMM=msgcomm}
${MSGCOMM} --more-than=1 --no-location -o mcomm-test9.tmp \
    mcomm-test9.in1 mcomm-test9.in2 || Exit 1
LC_ALL=C tr -d '\r' < mcomm-test9.tmp > mcomm-test9.out || Exit 1

cat << EOF > mcomm-test9.ok
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
"POT-Creation-Date: 2000-12-11 20:49+0100\n"
"PO-Revision-Date: 2000-03-18 15:25+01:00\n"
"Last-Translator: Karl Eichwalder <ke@suse.de>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

msgid "1"
msgstr "1x"
EOF

: ${DIFF=diff}
${DIFF} mcomm-test9.ok mcomm-test9.out
result=$?

exit $result
