6 use Test::More tests => 28;
8 use Scope::Upper qw/localize/;
17 localize '$y' => 1 => 2;
19 is $x, 2, 'goto 1 [not yet - x]';
20 is $y, undef, 'goto 1 [not yet - y]';
28 is $x, 1, 'goto 1 [ok - x]';
29 is $y, 1, 'goto 1 [ok - y]';
40 localize '$y' => 1 => 3;
42 is $x, 3, 'goto 2 [not yet - x]';
43 is $y, undef, 'goto 2 [not yet - y]';
52 is $x, 1, 'goto 2 [ok - x]';
53 is $y, 1, 'goto 2 [ok - y]';
65 localize '$y' => 1 => 4;
66 is $x, 3, 'die - reap outside eval [not yet 1 - x]';
67 is $y, undef, 'die - reap outside eval [not yet 1 - y]';
69 is $x, 2, 'die - reap outside eval [not yet 2 - x]';
70 is $y, undef, 'die - reap outside eval [not yet 2 - y]';
74 is $x, 1, 'die - reap outside eval [not yet 3 - x]';
75 is $y, undef, 'die - reap outside eval [not yet 3 - y]';
76 } # should trigger here
77 is $x, 1, 'die - reap outside eval [ok - x]';
78 is $y, 1, 'die - reap outside eval [ok - y]';
89 localize '$y' => 1 => 3;
90 is $x, 3, 'die - reap at eval [not yet 1 - x]';
91 is $y, undef, 'die - reap at eval [not yet 1 - y]';
93 is $x, 2, 'die - reap at eval [not yet 2 - x]';
94 is $y, undef, 'die - reap at eval [not yet 2 - y]';
97 }; # should trigger here
98 is $x, 1, 'die - reap at eval [ok - x]';
99 is $y, 1, 'die - reap at eval [ok - y]';
110 localize '$y' => 1 => 2;
111 is $x, 3, 'die - reap inside eval [not yet 1 - x]';
112 is $y, undef, 'die - reap inside eval [not yet 1 - y]';
114 is $x, 2, 'die - reap inside eval [not yet 2 - x]';
115 is $y, undef, 'die - reap inside eval [not yet 2 - y]';
117 } # should trigger here
119 is $x, 1, 'die - reap inside eval [ok - x]';
120 is $y, undef, 'die - reap inside eval [ok - y]';