e45b6cf0eb7493186949d5437b639f4a67541974
[p5sagit/Devel-Declare.git] / t / devel_callparser.t
1 use warnings;
2 use strict;
3
4 BEGIN {
5         eval { require Devel::CallParser };
6         if($@ ne "") {
7                 require Test::More;
8                 Test::More::plan(skip_all => "Devel::CallParser unavailable");
9         }
10 }
11
12 use Test::More tests => 1;
13
14 use Devel::CallParser ();
15
16 sub method {
17         my ($usepack, $name, $inpack, $sub) = @_;
18         no strict "refs";
19         *{"${inpack}::${name}"} = $sub;
20 }
21
22 use Devel::Declare method => sub {
23         my ($usepack, $use, $inpack, $name) = @_;
24         return sub (&) { ($usepack, $name, $inpack, $_[0]); };
25 };
26
27 method bar {
28         return join(",", @_);
29 };
30
31 is +__PACKAGE__->bar(qw(x y)), "main,x,y";
32
33 1;