gotta have a plan
[p5sagit/Devel-Declare.git] / t / simple.t
CommitLineData
94caac6e 1use strict;
2use warnings;
b52072dc 3use Test::More;
94caac6e 4
5sub method {
9026391e 6 my ($usepack, $name, $inpack, $sub) = @_;
94caac6e 7 no strict 'refs';
9026391e 8 *{"${inpack}::${name}"} = $sub;
94caac6e 9}
10
0ba8c7aa 11sub handle_method {
9026391e 12 my ($usepack, $use, $inpack, $name) = @_;
13 return sub (&) { ($usepack, $name, $inpack, $_[0]); };
0ba8c7aa 14}
15
16use Devel::Declare 'method' => \&handle_method;
94caac6e 17
c630715a 18my ($args1, $args2);
19
94caac6e 20method bar {
c630715a 21 $args1 = join(', ', @_);
22};
23
24method # blather
25 baz
26 # whee
53e3ab32 27{ # fweet
c630715a 28 $args2 = join(', ', @_);
94caac6e 29};
30
c630715a 31__PACKAGE__->bar(qw(1 2));
32__PACKAGE__->baz(qw(3 4));
33
34is($args1, 'main, 1, 2', 'Method bar args ok');
35is($args2, 'main, 3, 4', 'Method baz args ok');
0ba8c7aa 36
b52072dc 37done_testing;