Commit | Line | Data |
cd16c24c |
1 | #!./perl |
2 | |
3 | BEGIN { |
4 | chdir 't' if -d 't'; |
5 | @INC = '../lib'; |
6 | } |
7 | |
b9761643 |
8 | use Test::More tests => 6; |
cd16c24c |
9 | |
10 | my $v_plus = $] + 1; |
11 | my $v_minus = $] - 1; |
12 | |
13 | |
14 | ok( eval "use if ($v_minus > \$]), strict => 'subs'; \${'f'} = 12" eq 12, |
15 | '"use if" with a false condition, fake pragma'); |
16 | |
17 | ok( eval "use if ($v_minus > \$]), strict => 'refs'; \${'f'} = 12" eq 12, |
18 | '"use if" with a false condition and a pragma'); |
19 | |
20 | ok( eval "use if ($v_plus > \$]), strict => 'subs'; \${'f'} = 12" eq 12, |
21 | '"use if" with a true condition, fake pragma'); |
22 | |
23 | ok( (not defined eval "use if ($v_plus > \$]), strict => 'refs'; \${'f'} = 12" |
24 | and $@ =~ /while "strict refs" in use/), |
25 | '"use if" with a true condition and a pragma'); |
26 | |
66d45871 |
27 | ok( eval "use if 1, Cwd; cwd() || 1;", |
28 | '"use if" with a true condition, module, no arguments, exports'); |
29 | |
b9761643 |
30 | ok( eval "use if qw/ 1 if 1 strict subs /; \${'f'} = 12" eq 12, |
31 | '"use if" with a module named after keyword'); |