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

# Test C# support: --add-comments option.

cat <<EOF > xg-cs-5.cs
// This comment will not be extracted.
Console.WriteLine(GetString("help"));
//  TRANSLATORS: This is an extracted comment.
Console.WriteLine(GetString("me"));
/* Not extracted either. */
Console.WriteLine(GetString("Hey Jude"));
/*  TRANSLATORS:
     Nickname of the Beatles
*/
Console.WriteLine(GetString("The Fabulous Four"));
/* TRANSLATORS: The strings get concatenated.  */
Console.WriteLine(GetString("there is not enough" +
" room on a single line for this entire long, " // confusing, eh?
+ "verbose string"));
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --no-location --add-comments=TRANSLATORS: \
  -d xg-cs-5.tmp xg-cs-5.cs || Exit 1
LC_ALL=C tr -d '\r' < xg-cs-5.tmp.po > xg-cs-5.po || Exit 1

cat <<EOF > xg-cs-5.ok
msgid "help"
msgstr ""

#. TRANSLATORS: This is an extracted comment.
msgid "me"
msgstr ""

msgid "Hey Jude"
msgstr ""

#. TRANSLATORS:
#. Nickname of the Beatles
#.
msgid "The Fabulous Four"
msgstr ""

#. TRANSLATORS: The strings get concatenated.
msgid ""
"there is not enough room on a single line for this entire long, verbose "
"string"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-cs-5.ok xg-cs-5.po
result=$?

exit $result
