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

# Test Lua support

cat <<\EOF > xg-lu-1.lua
print(_("This is a test string."))
print(_('And another one.'))
print(_("Don't be afraid to extract this one."))
print(_('I don\'t bite!'))
print(_("I said: \"This is a test.\""))
print(_('He said: "You\'re right!"'))
print(_([[I like brackets.]]))
print(_([===[Brackets are awesome!]===]))
print(_([===[==[Even nested brackets]==]===]))
print(_([===[Or even unmached number of '=' signs]==]===]))
print(_([=[
First newline in long bracket is ignored.]=]))
print(_([=[

Second newline in long bracket is extracted.]=]))
print(_([=[
Newlines inside a long bracket string
and at the end are not special.
]=]))
print(_(hmm["nope"]))
print({_"yep"})
print(_["nope"])
print(_("\097"))
print(_("\x3F\z  	
\x2a"))
print(_("abc" .. "def"))
print(speed / 1000 .. 'Mbps')
EOF

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

cat <<EOF > xg-lu-1.ok
msgid "This is a test string."
msgstr ""

msgid "And another one."
msgstr ""

msgid "Don't be afraid to extract this one."
msgstr ""

msgid "I don't bite!"
msgstr ""

msgid "I said: \"This is a test.\""
msgstr ""

msgid "He said: \"You're right!\""
msgstr ""

msgid "I like brackets."
msgstr ""

msgid "Brackets are awesome!"
msgstr ""

msgid "==[Even nested brackets]=="
msgstr ""

msgid "Or even unmached number of '=' signs]=="
msgstr ""

msgid "First newline in long bracket is ignored."
msgstr ""

msgid ""
"\n"
"Second newline in long bracket is extracted."
msgstr ""

msgid ""
"Newlines inside a long bracket string\n"
"and at the end are not special.\n"
msgstr ""

msgid "yep"
msgstr ""

msgid "a"
msgstr ""

msgid "?*"
msgstr ""

msgid "abcdef"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-lu-1.ok xg-lu-1.po
result=$?

exit $result
