summaryrefslogtreecommitdiffstats
path: root/gettext-tools/tests/xgettext-13
blob: dcd100433e65d836085df0be861798adf9fa46a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

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

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}
${DIFF} xg-test13.ok xg-test13.po
result=$?

exit $result