Commit | Line | Data |
---|---|---|
a0e27d2e | 1 | use strict; |
2 | use warnings; | |
f8fc2592 | 3 | |
4 | use Test::More tests => 1; | |
5 | ||
a0e27d2e | 6 | BEGIN { |
f8fc2592 | 7 | |
a0e27d2e | 8 | package My::Meta::Trait; |
9 | use Moose::Role; | |
10 | ||
ef330397 | 11 | our $HAS_METH = 0; |
a0e27d2e | 12 | |
13 | before 'make_immutable' => sub { | |
14 | my ($meta) = @_; | |
f8fc2592 | 15 | |
a0e27d2e | 16 | # $meta->name->meta should have the correct methods on it.. |
ef330397 | 17 | $HAS_METH++ if $meta->name->meta->get_method('some_method'); |
a0e27d2e | 18 | }; |
19 | } | |
f8fc2592 | 20 | |
a0e27d2e | 21 | { |
f8fc2592 | 22 | |
a0e27d2e | 23 | package TestClass; |
24 | use Moose -traits => 'My::Meta::Trait'; | |
25 | ||
f8fc2592 | 26 | sub some_method { } |
a0e27d2e | 27 | |
28 | __PACKAGE__->meta->make_immutable; | |
29 | } | |
30 | ||
3259b5fd | 31 | ok( $My::Meta::Trait::HAS_METH, 'Can find method' ); |
a0e27d2e | 32 |