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

# Test of Desktop Entry support.

: ${XGETTEXT=xgettext}

cat <<\EOF >err1.desktop
[Desktop Entry]
This is an invalid line
Name =Foo
EOF

(LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err1.desktop 2>&1; exit) | grep "missing '=' after" || Exit 1

cat <<\EOF >err2.desktop
[Desktop Entry
EOF

(LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err2.desktop 2>&1; exit) | grep "unterminated group name" || Exit 1

cat <<\EOF >err3.desktop
[Desktop Entry]
  Not a blank line!
EOF

(LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err3.desktop 2>&1; exit) | grep "invalid non-blank line" || Exit 1

cat <<\EOF >err4.desktop
[Desktop Entry]a
EOF

(LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - err4.desktop 2>&1; exit) | grep "invalid non-blank character" || Exit 1

# gettext 0.19.4 issued an baseless warning of this.
cat <<\EOF >ok4.desktop
[Desktop Entry]
EOF

(LANGUAGE= LC_ALL=C ${XGETTEXT} --add-comments -o - ok4.desktop 2>&1; exit) | grep "invalid non-blank character" && Exit 1

cat <<\EOF > xg.desktop
[Desktop Entry]
Type=Application
Name =Foo
# This is a comment for comment
#   This is a comment for comment  
Comment= \sThis is a \nmultiline\t comment; for testing
Comment[foo]=Already translated comment
X-Foo = bar
# This is a comment before a blank line

Keywords=Keyword1;Keyword2;Key\;word3;
EOF

${XGETTEXT} --add-comments -o xg-de-1.tmp xg.desktop || Exit 1
func_filter_POT_Creation_Date xg-de-1.tmp xg-desktop.pot

cat <<\EOF > xg-desktop.ok
# 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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"

#: xg.desktop:4
msgid "Foo"
msgstr ""

#. This is a comment for comment
#. This is a comment for comment
#: xg.desktop:7
msgid ""
" This is a \n"
"multiline\t comment; for testing"
msgstr ""

#: xg.desktop:12
msgid "Keyword1;Keyword2;Key\\;word3;"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-desktop.ok xg-desktop.pot
result=$?

exit $result
