#!/bin/sh

# Test wrapping long lines.
# Both msgid and location comments should wrap at the same column.

tmpfiles=""
trap 'rm -fr $tmpfiles' 1 2 3 15

tmpfiles="$tmpfiles xg-test13.c xg-test13.ok xg-test13.tmp xg-test13.tmp.po xg-test13.po xg-test13.out xg-test13.err"

cat <<\EOF > xg-test13.c
/* With --width=30, the following 10 gettext calls will produce:

     #: x:1 x:2 x:3 x:4 x:5 x:6 x:7
     #: x:8 x:9 x:10
     msgid "a"

   because strlen("#:") + strlen(" x:N") * 7 = 30.  */
#line 1 "x"
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");
gettext ("a");

/* And the following gettext call will produce:

    msgid ""
    "x:1 x:2 x:3 x:4 x:5 x:6 x:7 "
    "x:8 x:9 x:10"

   because strlen("\"") + strlen("x:N ") * 7 + strlen("\"") = 30.  */
gettext ("x:1 x:2 x:3 x:4 x:5 x:6 x:7 x:8 x:9 x:10");
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --add-location --width=30 -d xg-test13.tmp \
            xg-test13.c || exit 1
LC_ALL=C tr -d '\r' < xg-test13.tmp.po > xg-test13.po || exit 1

cat <<\EOF > xg-test13.ok
#: x:1 x:2 x:3 x:4
#: x:5 x:6 x:7 x:8
#: x:9 x:10
msgid "a"
msgstr ""

#: x:19
msgid ""
"x:1 x:2 x:3 x:4 x:5 x:6 x:7 "
"x:8 x:9 x:10"
msgstr ""
EOF

: ${DIFF=diff -b}
${DIFF} xg-test13.ok xg-test13.po || exit 1

rm -fr $tmpfiles

exit 0
