Commit | Line | Data |
---|---|---|
25f5d540 LM |
1 | #!perl |
2 | ||
3 | use strict; | |
4 | use warnings; | |
5 | ||
6 | use Test::More tests => 18; | |
7 | ||
8 | use XS::APItest qw(with_vars); | |
9 | ||
10 | my $foo = "A"; my $rfoo = \$foo; | |
11 | my $bar = "B"; my $rbar = \$bar; | |
12 | my $baz = "C"; my $rbaz = \$baz; | |
13 | ||
14 | with_vars foo bar baz { | |
15 | is $foo, 1; | |
16 | is $$rfoo, "A"; | |
17 | isnt \$foo, $rfoo; | |
18 | ||
19 | is $bar, 2; | |
20 | is $$rbar, "B"; | |
21 | isnt \$bar, $rbar; | |
22 | ||
23 | is $baz, 3; | |
24 | is $$rbaz, "C"; | |
25 | isnt \$baz, $rbaz; | |
26 | } | |
27 | ||
28 | is $foo, "A"; | |
29 | is \$foo, $rfoo; | |
30 | ||
31 | is $bar, "B"; | |
32 | is \$bar, $rbar; | |
33 | ||
34 | is $baz, "C"; | |
35 | is \$baz, $rbaz; | |
36 | ||
37 | with_vars x { | |
38 | is $x, 1; | |
39 | } | |
40 | ||
41 | is eval('$x++'), undef; | |
42 | like $@, qr/explicit package name/; |