my $run;
if (VMG_UVAR) {
- plan tests => 33;
+ plan tests => 41;
$run = 1;
} else {
plan skip_all => 'uvar magic is required to test symbol table hooks';
}, 'stash: valid method call';
}
+{
+ local %mg;
+
+ eval q{ Hlagh->shoot() };
+
+ is $@, '', 'stash: second valid method call ran fine';
+ is_deeply \%mg, {
+ fetch => [ qw/shoot/ ],
+ }, 'stash: second valid method call';
+}
+
{
local %mg;
package Hlagher;
our @ISA;
BEGIN { @ISA = 'Hlagh' }
- Hlagher->shoot()
+ Hlagher->leave()
];
is $@, '', 'inherited valid method call ran fine';
is_deeply \%mg, {
- fetch => [ qw/ISA shoot/ ],
+ fetch => [ qw/ISA leave/ ],
}, 'stash: inherited valid method call';
}
+{
+ local %mg;
+
+ eval q{ Hlagher->leave() };
+
+ is $@, '', 'second inherited valid method call ran fine';
+ is_deeply \%mg, { }, 'stash: second inherited valid method call doesn\'t call magic';
+}
+
+{
+ local %mg;
+
+ eval q{ Hlagher->shoot() };
+
+ is $@, '', 'inherited previously called valid method call ran fine';
+ is_deeply \%mg, {
+ fetch => [ qw/shoot/ ],
+ }, 'stash: inherited previously called valid method call';
+}
+
+{
+ local %mg;
+
+ eval q{ Hlagher->shoot() };
+
+ is $@, '', 'second inherited previously called valid method call ran fine';
+ is_deeply \%mg, { }, 'stash: second inherited previously called valid method call doesn\'t call magic';
+}
+
{
local %mg;