xref: /netbsd-src/external/gpl2/gettext/dist/gettext-tools/tests/xgettext-6 (revision 946379e7b37692fc43f68eb0d1c10daa0a7f3b6c)
1*946379e7Schristos#!/bin/sh
2*946379e7Schristos
3*946379e7Schristos# Test of position dependent recognition of format strings.
4*946379e7Schristos
5*946379e7Schristostmpfiles=""
6*946379e7Schristostrap 'rm -fr $tmpfiles' 1 2 3 15
7*946379e7Schristos
8*946379e7Schristostmpfiles="$tmpfiles xg-test6.c"
9*946379e7Schristoscat <<\EOF > xg-test6.c
10*946379e7Schristosfprintf (fp, gettext ("c-format positive1"), gettext ("c-format negative1"));
11*946379e7Schristosprintk (gettext ("c-format negative2"));
12*946379e7SchristosEOF
13*946379e7Schristos
14*946379e7Schristostmpfiles="$tmpfiles xg-test6.sh"
15*946379e7Schristoscat <<\EOF > xg-test6.sh
16*946379e7Schristoseval_gettext "sh-format positive1" "`gettext \"sh-format negative1\"`"
17*946379e7Schristosecho "`gettext \"sh-format negative2\"`"
18*946379e7SchristosEOF
19*946379e7Schristos
20*946379e7Schristostmpfiles="$tmpfiles xg-test6.py"
21*946379e7Schristoscat <<\EOF > xg-test6.py
22*946379e7Schristosmy_printf (gettext ("python-format positive1"),
23*946379e7Schristos           gettext ("python-format negative1"));
24*946379e7Schristosprintk (gettext ("python-format negative2"));
25*946379e7SchristosEOF
26*946379e7Schristos
27*946379e7Schristostmpfiles="$tmpfiles xg-test6.lisp"
28*946379e7Schristoscat <<\EOF > xg-test6.lisp
29*946379e7Schristos(format t (gettext "lisp-format positive1") (gettext "lisp-format negative1"))
30*946379e7Schristos(prin1 (gettext "lisp-format negative2"))
31*946379e7SchristosEOF
32*946379e7Schristos
33*946379e7Schristostmpfiles="$tmpfiles xg-test6.el"
34*946379e7Schristoscat <<\EOF > xg-test6.el
35*946379e7Schristos(format (_ "elisp-format positive1") (_ "elisp-format negative1"))
36*946379e7Schristos(printk (_ "elisp-format negative2"))
37*946379e7SchristosEOF
38*946379e7Schristos
39*946379e7Schristostmpfiles="$tmpfiles xg-test6.jl"
40*946379e7Schristoscat <<\EOF > xg-test6.jl
41*946379e7Schristos(format stream (_ "librep-format positive1") (_ "librep-format negative1"))
42*946379e7Schristos(printk (_ "librep-format negative2"))
43*946379e7SchristosEOF
44*946379e7Schristos
45*946379e7Schristostmpfiles="$tmpfiles xg-test6.java"
46*946379e7Schristoscat <<\EOF > xg-test6.java
47*946379e7SchristosMessageFormat.format(gettext("java-format positive1"),
48*946379e7Schristos                     gettext("java-format negative1"));
49*946379e7SchristosSystem.err.println(gettext("java-format negative2"));
50*946379e7SchristosEOF
51*946379e7Schristos
52*946379e7Schristostmpfiles="$tmpfiles xg-test6.awk"
53*946379e7Schristoscat <<\EOF > xg-test6.awk
54*946379e7Schristosprintf dcgettext ("awk-format positive1"), dcgettext ("awk-format negative1");
55*946379e7Schristosprintf (dcgettext ("awk-format positive2"), dcgettext ("awk-format negative2"));
56*946379e7Schristosprintf dcgettext ("awk-format positive3"); dcgettext ("awk-format negative3");
57*946379e7Schristosprintk dcgettext ("awk-format negative4");
58*946379e7SchristosEOF
59*946379e7Schristos
60*946379e7Schristostmpfiles="$tmpfiles xg-test6.ycp"
61*946379e7Schristoscat <<\EOF > xg-test6.ycp
62*946379e7Schristossformat (_("ycp-format positive1"), _("ycp-format negative1"));
63*946379e7Schristosprintk (_("ycp-format negative2"));
64*946379e7SchristosEOF
65*946379e7Schristos
66*946379e7Schristostmpfiles="$tmpfiles xg-test6.tcl"
67*946379e7Schristoscat <<\EOF > xg-test6.tcl
68*946379e7Schristos[format [::msgcat::mc "tcl-format positive1"]
69*946379e7Schristos        [::msgcat::mc "tcl-format negative1"]]
70*946379e7Schristos[print [::msgcat::mc "tcl-format negative2"]]
71*946379e7SchristosEOF
72*946379e7Schristos
73*946379e7Schristostmpfiles="$tmpfiles xg-test6.pl"
74*946379e7Schristoscat <<\EOF > xg-test6.pl
75*946379e7Schristosprintf gettext "perl-format positive1", gettext ("perl-format negative1");
76*946379e7Schristosgettext ("perl-format negative2");
77*946379e7Schristosprintf gettext "perl-format positive2"; gettext ("perl-format negative3");
78*946379e7Schristosgettext ("perl-format negative4");
79*946379e7Schristosprint sprintf gettext "perl-format positive3";
80*946379e7Schristosprint kprintf gettext "perl-format negative5";
81*946379e7SchristosEOF
82*946379e7Schristos
83*946379e7Schristostmpfiles="$tmpfiles xg-test6.php"
84*946379e7Schristoscat <<\EOF > xg-test6.php
85*946379e7Schristos<? php
86*946379e7Schristosprintf (_ ("php-format positive1"), _ ("php-format negative1"));
87*946379e7Schristosprintk (_ ("php-format negative2"));
88*946379e7SchristosEOF
89*946379e7Schristos
90*946379e7Schristostmpfiles="$tmpfiles xg-test6.po"
91*946379e7Schristos: ${XGETTEXT=xgettext}
92*946379e7Schristos${XGETTEXT} --omit-header --no-location -d xg-test6 \
93*946379e7Schristos  --flag=my_printf:1:python-format \
94*946379e7Schristos  xg-test6.c xg-test6.sh xg-test6.py xg-test6.lisp xg-test6.el \
95*946379e7Schristos  xg-test6.jl xg-test6.java xg-test6.awk xg-test6.ycp xg-test6.tcl \
96*946379e7Schristos  xg-test6.pl xg-test6.php
97*946379e7Schristostest $? = 0 || { rm -fr $tmpfiles; exit 1; }
98*946379e7Schristos
99*946379e7Schristostmpfiles="$tmpfiles xg-test6.ok"
100*946379e7Schristoscat <<\EOF > xg-test6.ok
101*946379e7Schristos#, c-format
102*946379e7Schristosmsgid "c-format positive1"
103*946379e7Schristosmsgstr ""
104*946379e7Schristos
105*946379e7Schristosmsgid "c-format negative1"
106*946379e7Schristosmsgstr ""
107*946379e7Schristos
108*946379e7Schristosmsgid "c-format negative2"
109*946379e7Schristosmsgstr ""
110*946379e7Schristos
111*946379e7Schristos#, sh-format
112*946379e7Schristosmsgid "sh-format positive1"
113*946379e7Schristosmsgstr ""
114*946379e7Schristos
115*946379e7Schristosmsgid "sh-format negative1"
116*946379e7Schristosmsgstr ""
117*946379e7Schristos
118*946379e7Schristosmsgid "sh-format negative2"
119*946379e7Schristosmsgstr ""
120*946379e7Schristos
121*946379e7Schristos#, python-format
122*946379e7Schristosmsgid "python-format positive1"
123*946379e7Schristosmsgstr ""
124*946379e7Schristos
125*946379e7Schristosmsgid "python-format negative1"
126*946379e7Schristosmsgstr ""
127*946379e7Schristos
128*946379e7Schristosmsgid "python-format negative2"
129*946379e7Schristosmsgstr ""
130*946379e7Schristos
131*946379e7Schristos#, lisp-format
132*946379e7Schristosmsgid "lisp-format positive1"
133*946379e7Schristosmsgstr ""
134*946379e7Schristos
135*946379e7Schristosmsgid "lisp-format negative1"
136*946379e7Schristosmsgstr ""
137*946379e7Schristos
138*946379e7Schristosmsgid "lisp-format negative2"
139*946379e7Schristosmsgstr ""
140*946379e7Schristos
141*946379e7Schristos#, elisp-format
142*946379e7Schristosmsgid "elisp-format positive1"
143*946379e7Schristosmsgstr ""
144*946379e7Schristos
145*946379e7Schristosmsgid "elisp-format negative1"
146*946379e7Schristosmsgstr ""
147*946379e7Schristos
148*946379e7Schristosmsgid "elisp-format negative2"
149*946379e7Schristosmsgstr ""
150*946379e7Schristos
151*946379e7Schristos#, librep-format
152*946379e7Schristosmsgid "librep-format positive1"
153*946379e7Schristosmsgstr ""
154*946379e7Schristos
155*946379e7Schristosmsgid "librep-format negative1"
156*946379e7Schristosmsgstr ""
157*946379e7Schristos
158*946379e7Schristosmsgid "librep-format negative2"
159*946379e7Schristosmsgstr ""
160*946379e7Schristos
161*946379e7Schristos#, java-format
162*946379e7Schristosmsgid "java-format positive1"
163*946379e7Schristosmsgstr ""
164*946379e7Schristos
165*946379e7Schristosmsgid "java-format negative1"
166*946379e7Schristosmsgstr ""
167*946379e7Schristos
168*946379e7Schristosmsgid "java-format negative2"
169*946379e7Schristosmsgstr ""
170*946379e7Schristos
171*946379e7Schristos#, awk-format
172*946379e7Schristosmsgid "awk-format positive1"
173*946379e7Schristosmsgstr ""
174*946379e7Schristos
175*946379e7Schristosmsgid "awk-format negative1"
176*946379e7Schristosmsgstr ""
177*946379e7Schristos
178*946379e7Schristos#, awk-format
179*946379e7Schristosmsgid "awk-format positive2"
180*946379e7Schristosmsgstr ""
181*946379e7Schristos
182*946379e7Schristosmsgid "awk-format negative2"
183*946379e7Schristosmsgstr ""
184*946379e7Schristos
185*946379e7Schristos#, awk-format
186*946379e7Schristosmsgid "awk-format positive3"
187*946379e7Schristosmsgstr ""
188*946379e7Schristos
189*946379e7Schristosmsgid "awk-format negative3"
190*946379e7Schristosmsgstr ""
191*946379e7Schristos
192*946379e7Schristosmsgid "awk-format negative4"
193*946379e7Schristosmsgstr ""
194*946379e7Schristos
195*946379e7Schristos#, ycp-format
196*946379e7Schristosmsgid "ycp-format positive1"
197*946379e7Schristosmsgstr ""
198*946379e7Schristos
199*946379e7Schristosmsgid "ycp-format negative1"
200*946379e7Schristosmsgstr ""
201*946379e7Schristos
202*946379e7Schristosmsgid "ycp-format negative2"
203*946379e7Schristosmsgstr ""
204*946379e7Schristos
205*946379e7Schristos#, tcl-format
206*946379e7Schristosmsgid "tcl-format positive1"
207*946379e7Schristosmsgstr ""
208*946379e7Schristos
209*946379e7Schristosmsgid "tcl-format negative1"
210*946379e7Schristosmsgstr ""
211*946379e7Schristos
212*946379e7Schristosmsgid "tcl-format negative2"
213*946379e7Schristosmsgstr ""
214*946379e7Schristos
215*946379e7Schristos#, perl-format
216*946379e7Schristosmsgid "perl-format positive1"
217*946379e7Schristosmsgstr ""
218*946379e7Schristos
219*946379e7Schristosmsgid "perl-format negative1"
220*946379e7Schristosmsgstr ""
221*946379e7Schristos
222*946379e7Schristosmsgid "perl-format negative2"
223*946379e7Schristosmsgstr ""
224*946379e7Schristos
225*946379e7Schristos#, perl-format
226*946379e7Schristosmsgid "perl-format positive2"
227*946379e7Schristosmsgstr ""
228*946379e7Schristos
229*946379e7Schristosmsgid "perl-format negative3"
230*946379e7Schristosmsgstr ""
231*946379e7Schristos
232*946379e7Schristosmsgid "perl-format negative4"
233*946379e7Schristosmsgstr ""
234*946379e7Schristos
235*946379e7Schristos#, perl-format
236*946379e7Schristosmsgid "perl-format positive3"
237*946379e7Schristosmsgstr ""
238*946379e7Schristos
239*946379e7Schristosmsgid "perl-format negative5"
240*946379e7Schristosmsgstr ""
241*946379e7Schristos
242*946379e7Schristos#, php-format
243*946379e7Schristosmsgid "php-format positive1"
244*946379e7Schristosmsgstr ""
245*946379e7Schristos
246*946379e7Schristosmsgid "php-format negative1"
247*946379e7Schristosmsgstr ""
248*946379e7Schristos
249*946379e7Schristosmsgid "php-format negative2"
250*946379e7Schristosmsgstr ""
251*946379e7SchristosEOF
252*946379e7Schristos
253*946379e7Schristos: ${DIFF=diff}
254*946379e7Schristos${DIFF} xg-test6.ok xg-test6.po
255*946379e7Schristosresult=$?
256*946379e7Schristos
257*946379e7Schristosrm -fr $tmpfiles
258*946379e7Schristos
259*946379e7Schristosexit $result
260