X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F10-base.t;h=a69a7ae1761542a23ec3df3654c6cb7fa91c79f1;hb=HEAD;hp=b5ce7317d85c165fdbc37b0240fd4b8e8f6f439b;hpb=f067fa817eb9eedd084d756ece046b67b23fb657;p=perl%2Fmodules%2FSub-Op.git diff --git a/t/10-base.t b/t/10-base.t index b5ce731..a69a7ae 100644 --- a/t/10-base.t +++ b/t/10-base.t @@ -5,7 +5,7 @@ use warnings; use blib 't/Sub-Op-LexicalSub'; -use Test::More tests => (1 + 3) * 15 + (1 + 2 * 3) * 2 + 2 * 28; +use Test::More tests => (1 + 3) * 17 + (1 + 2 * 3) * 2 + 2 * 31; our $called; @@ -71,7 +71,7 @@ our $called; is $called, $calls, "@names: the hook was called the right number of times"; if ($called < $calls) { - fail for $called + 1 .. $calls; + fail, fail for $called + 1 .. $calls; } } } @@ -128,6 +128,16 @@ fetch 1, do { no strict 'refs'; *{__PACKAGE__.'::fetch'}{CODE} }, 2 ---- fetch # () # [ 1, undef, 2 ] #### +my ($cb, $err); +BEGIN { + $cb = do { no strict 'refs'; \&{__PACKAGE__.'::cvref'} }; + eval { $cb->() }; + $err = $@ =~ /^Undefined subroutine &main::cvref/ ? undef : $@; +} +cvref $err; +---- +cvref # () # [ undef ] +#### our $scalr = 1; scalr $scalr; ---- @@ -151,3 +161,9 @@ foo, bar # () # [ 1 ], [ 2 ] # foo, bar foo 1, foo(2), 3, bar(4, foo(bar, 5), 6); ---- foo, bar # @_ # [ 2 ], [ ], [ 5 ], [ 4, 5, 6 ], [ 1, 2, 3, 4, 5, 6 ] # foo, bar, foo, bar, foo +#### +foo 0, sub { + foo $_[0], 2, $_[1] +}->(1, 3), 4; +---- +foo # @_ # [ 1, 2, 3 ], [ 0, 1, 2, 3, 4 ]