summaryrefslogtreecommitdiff
path: root/gettext-tools/tests/xgettext-c-17
blob: 7cae3df29d77df163cb878f754317eba3c2a1d37 (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
#! /bin/sh

# Test C++ support: test kde-format and format recognition heuristics.

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

tmpfiles="$tmpfiles xg-c-17.cc"
cat <<\EOF > xg-c-17.cc
/* When xgettext has no info, it flags both c-format and kde-format, based
   on the heuristics.  */
gettext ("used time: %1m %2s");

/* When the programmer says it's kde-format, xgettext does not apply the
   heuristics.  */
/* xgettext: kde-format */
gettext ("remaining time: %1m %2s");
EOF

tmpfiles="$tmpfiles xg-c-17.tmp.po xg-c-17.po"
: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --no-location -d xg-c-17.tmp --language=C++ --kde \
  xg-c-17.cc
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
LC_ALL=C tr -d '\r' < xg-c-17.tmp.po > xg-c-17.po
test $? = 0 || { rm -fr $tmpfiles; exit 1; }

tmpfiles="$tmpfiles xg-c-17.ok"
cat <<EOF > xg-c-17.ok
#, c-format, kde-format
msgid "used time: %1m %2s"
msgstr ""

#, kde-format
msgid "remaining time: %1m %2s"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-c-17.ok xg-c-17.po
result=$?

rm -fr $tmpfiles

exit $result