improvement the compatibility with Moose.
[gitmo/Mouse.git] / t / 800_shikabased / 013-compatibility-get_method_list.t
CommitLineData
8632b6fe 1use strict;
2use warnings;
3use Test::More;
4plan skip_all => "This test requires Moose" unless eval "require Moose; 1;";
5plan tests => 6;
6
7test($_) for qw/Moose Mouse/;
8exit;
9
10sub test {
11 my $class = shift;
12 eval <<"...";
13{
14 package ${class}Class;
15 use ${class};
16 sub foo { }
17 no ${class};
18}
19{
20 package ${class}ClassImm;
21 use ${class};
22 sub foo { }
23 no ${class};
24 __PACKAGE__->meta->make_immutable();
25}
26{
27 package ${class}Role;
28 use ${class}::Role;
29 sub bar { }
30}
31...
32 die $@ if $@;
33 is join(',', sort "${class}Class"->meta->get_method_list()), 'foo,meta';
34 is join(',', sort "${class}ClassImm"->meta->get_method_list()), 'foo,meta,new';
35 is join(',', sort "${class}Role"->meta->get_method_list()), 'bar';
36}
37