This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
1ecf24a0c0251781347a987fdbfbb074c7eb3316
[perl5.git] / t / pragma / warn / 9enabled
1 Check warnings::enabled & warnings::warn
2
3 __END__
4
5 --FILE-- abc.pm
6 package abc ;
7 use warnings "io" ;
8 print "ok1\n" if ! warnings::enabled() ;
9 print "ok2\n" if ! warnings::enabled("io") ;
10 1;
11 --FILE-- 
12 no warnings;
13 use abc ;
14 EXPECT
15 ok1
16 ok2
17 ########
18
19 --FILE-- abc.pm
20 package abc ;
21 no warnings ;
22 print "ok1\n" if warnings::enabled() ;
23 print "ok2\n" if warnings::enabled("syntax") ;
24 1;
25 --FILE-- 
26 use warnings 'syntax' ;
27 use abc ;
28 EXPECT
29 ok1
30 ok2
31 ########
32
33 --FILE-- abc.pm
34 package abc ;
35 use warnings 'syntax' ;
36 print "ok1\n" if   warnings::enabled() ;
37 print "ok2\n" if ! warnings::enabled("syntax") ;
38 1;
39 --FILE-- 
40 use warnings 'io' ;
41 use abc ;
42 EXPECT
43 ok1
44 ok2
45 ########
46
47 --FILE-- abc
48 no warnings ;
49 print "ok1\n" if warnings::enabled() ;
50 print "ok2\n" if warnings::enabled("syntax") ;
51 1;
52 --FILE-- 
53 use warnings 'syntax' ;
54 require "abc" ;
55 EXPECT
56 ok1
57 ok2
58 ########
59
60 --FILE-- abc
61 use warnings 'syntax' ;
62 print "ok1\n" if   warnings::enabled ;
63 print "ok2\n" if ! warnings::enabled("syntax") ;
64 print "ok3\n" if   warnings::enabled("io") ;
65 1;
66 --FILE-- 
67 use warnings 'io' ;
68 require "abc" ;
69 EXPECT
70 ok1
71 ok2
72 ok3
73 ########
74
75 --FILE-- abc.pm
76 package abc ;
77 no warnings ;
78 sub check {
79   print "ok1\n" if warnings::enabled ;
80   print "ok2\n" if warnings::enabled("syntax") ;
81 }
82 1;
83 --FILE-- 
84 use warnings 'syntax' ;
85 use abc ;
86 abc::check() ;
87 EXPECT
88 ok1
89 ok2
90 ########
91
92 --FILE-- abc.pm
93 package abc ;
94 use warnings 'io' ;
95 sub check {
96   print "ok1\n" if  warnings::enabled ;
97   print "ok2\n" if  warnings::enabled("syntax") ;
98   print "ok3\n" if ! warnings::enabled("io") ;
99 }
100 1;
101 --FILE-- 
102 use warnings 'syntax' ;
103 use abc ;
104 abc::check() ;
105 EXPECT
106 ok1
107 ok2
108 ok3
109 ########
110
111 --FILE-- abc
112 package abc ;
113 no warnings ;
114 sub check {
115   print "ok1\n" if warnings::enabled ;
116   print "ok2\n" if warnings::enabled("syntax") ;
117 }
118 1;
119 --FILE-- 
120 use warnings 'syntax' ;
121 require "abc" ;
122 abc::check() ;
123 EXPECT
124 ok1
125 ok2
126 ########
127
128 --FILE-- abc
129 package abc ;
130 use warnings 'io' ;
131 sub check {
132   print "ok1\n" if warnings::enabled ;
133   print "ok2\n" if warnings::enabled("syntax") ;
134   print "ok3\n" if ! warnings::enabled("io") ;
135 }
136 1;
137 --FILE-- 
138 use warnings 'syntax' ;
139 require "abc" ;
140 abc::check() ;
141 EXPECT
142 ok1
143 ok2
144 ok3
145 ########
146
147 --FILE-- abc.pm
148 package abc ;
149 use warnings "io" ;
150 print "ok1\n" if ! warnings::enabled() ;
151 print "ok2\n" if ! warnings::enabled("io") ;
152 1;
153 --FILE-- def.pm
154 no warnings;
155 use abc ;
156 1;
157 --FILE-- 
158 use warnings;
159 use def ;
160 EXPECT
161 ok1
162 ok2
163 ########
164
165 --FILE-- abc.pm
166 package abc ;
167 no warnings ;
168 print "ok1\n" if warnings::enabled() ;
169 print "ok2\n" if warnings::enabled("syntax") ;
170 print "ok3\n" if !warnings::enabled("io") ;
171 1;
172 --FILE-- def.pm
173 use warnings 'syntax' ;
174 print "ok4\n" if warnings::enabled() ;
175 print "ok5\n" if warnings::enabled("io") ;
176 use abc ;
177 1;
178 --FILE--
179 use warnings 'io' ;
180 use def ;
181 EXPECT
182 ok1
183 ok2
184 ok3
185 ok4
186 ok5
187 ########
188
189 --FILE-- abc.pm
190 package abc ;
191 no warnings ;
192 sub check {
193   print "ok1\n" if warnings::enabled ;
194   print "ok2\n" if warnings::enabled("syntax") ;
195 }
196 1;
197 --FILE-- 
198 use warnings 'syntax' ;
199 use abc ;
200 eval { abc::check() ; };
201 print $@ ;
202 EXPECT
203 ok1
204 ok2
205 ########
206
207 --FILE-- abc.pm
208 package abc ;
209 use warnings 'io' ;
210 sub check {
211   print "ok1\n" if  warnings::enabled ;
212   print "ok2\n" if  warnings::enabled("syntax") ;
213   print "ok3\n" if ! warnings::enabled("io") ;
214 }
215 1;
216 --FILE-- 
217 use warnings 'syntax' ;
218 use abc ;
219 eval { abc::check() ; } ;
220 print $@ ;
221 EXPECT
222 ok1
223 ok2
224 ok3
225 ########
226
227 --FILE-- abc
228 package abc ;
229 no warnings ;
230 sub check {
231   print "ok1\n" if warnings::enabled ;
232   print "ok2\n" if warnings::enabled("syntax") ;
233 }
234 1;
235 --FILE-- 
236 use warnings 'syntax' ;
237 require "abc" ;
238 eval { abc::check() ; } ;
239 print $@ ;
240 EXPECT
241 ok1
242 ok2
243 ########
244
245 --FILE-- abc
246 package abc ;
247 use warnings 'io' ;
248 sub check {
249   print "ok1\n" if warnings::enabled ;
250   print "ok2\n" if warnings::enabled("syntax") ;
251   print "ok3\n" if warnings::enabled("io") ;
252 }
253 1;
254 --FILE-- 
255 use warnings 'syntax' ;
256 require "abc" ;
257 eval { use warnings 'io' ; abc::check() ; };
258 abc::check() ; 
259 print $@ ;
260 EXPECT
261 ok1
262 ok2
263 ok3
264 ok1
265 ok2
266 ########
267
268 --FILE-- abc.pm
269 package abc ;
270 use warnings 'io' ;
271 sub check {
272   print "ok1\n" if  warnings::enabled ;
273   print "ok2\n" if  warnings::enabled("syntax") ;
274   print "ok3\n" if ! warnings::enabled("io") ;
275 }
276 1;
277 --FILE-- 
278 use warnings 'syntax' ;
279 use abc ;
280 sub fred { abc::check() }
281 fred() ;
282 EXPECT
283 ok1
284 ok2
285 ok3
286 ########
287
288 --FILE-- abc.pm
289 package abc ;
290 use warnings 'io' ;
291 sub check {
292   print "ok1\n" if  ! warnings::enabled ;
293 }
294 1;
295 --FILE-- 
296 use warnings 'syntax' ;
297 use abc ;
298 sub fred { no warnings ; abc::check() }
299 fred() ;
300 EXPECT
301 ok1
302 ########
303
304 --FILE-- abc.pm
305 package abc ;
306 use warnings 'misc' ;
307 sub check {
308   print "ok1\n" if  warnings::enabled ;
309   print "ok2\n" if  warnings::enabled("syntax") ;
310   print "ok3\n" if  warnings::enabled("io") ;
311   print "ok4\n" if  ! warnings::enabled("misc") ;
312 }
313 1;
314 --FILE-- 
315 use warnings 'syntax' ;
316 use abc ;
317 sub fred { use warnings 'io'  ; abc::check() }
318 fred() ;
319 EXPECT
320 ok1
321 ok2
322 ok3
323 ok4
324 ########
325
326 # check warnings::warn
327 use warnings ;
328 eval { warnings::warn() } ;
329 print $@ ;
330 eval { warnings::warn("fred") } ;
331 print $@ ;
332 EXPECT
333 Usage: warnings::warn('category', 'message') at - line 4
334 Usage: warnings::warn('category', 'message') at - line 6
335 ########
336
337 --FILE-- abc.pm
338 package abc ;
339 use warnings 'misc' ;
340 sub check { warnings::warn("io", "hello") }
341 1;
342 --FILE--
343 use warnings "io" ;
344 use abc;
345 abc::check() ;
346 EXPECT
347 hello at - line 3
348 ########
349
350 --FILE-- abc.pm
351 package abc ;
352 use warnings 'misc' ;
353 sub check { warnings::warn("misc", "hello") }
354 1;
355 --FILE--
356 use warnings "io" ;
357 use abc;
358 abc::check() ;
359 EXPECT
360 hello at - line 3
361 ########
362
363 --FILE-- abc.pm
364 package abc ;
365 use warnings 'misc' ;
366 sub check { warnings::warn("io", "hello") }
367 1;
368 --FILE--
369 use warnings qw( FATAL deprecated ) ;
370 use abc;
371 eval { abc::check() ; } ;
372 print "[[$@]]\n";
373 EXPECT
374 hello at - line 3
375 [[]]
376 ########
377
378 --FILE-- abc.pm
379 package abc ;
380 use warnings 'misc' ;
381 sub check { warnings::warn("io", "hello") }
382 1;
383 --FILE--
384 use warnings qw( FATAL io ) ;
385 use abc;
386 eval { abc::check() ; } ;
387 print "[[$@]]\n";
388 EXPECT
389 [[hello at - line 3
390 ]]