Commit | Line | Data |
aebf20a5 |
1 | #!perl |
2 | use strict; |
3 | use warnings; |
aebf20a5 |
4 | |
aebf20a5 |
5 | use Test::More tests => 4; |
6 | |
7 | use Mouse::Util qw(does_role); |
8 | |
9 | { |
10 | package FooTrait; |
11 | use Mouse::Role; |
12 | |
13 | package BarTrait; |
14 | use Mouse::Role; |
15 | |
16 | package BaseClass; |
17 | use Mouse -traits => qw(FooTrait); |
18 | |
19 | package SubClass; |
20 | use Mouse -traits => qw(BarTrait); |
21 | |
22 | extends qw(BaseClass); |
23 | } |
24 | |
25 | ok does_role(BaseClass->meta, 'FooTrait'), ' BaseClass->meta->does("FooTrait")'; |
26 | ok!does_role(BaseClass->meta, 'BarTrait'), '!BaseClass->meta->does("BarTrait")'; |
27 | |
28 | ok does_role(SubClass->meta, 'FooTrait'), 'SubClass->meta->does("FooTrait")'; |
29 | ok does_role(SubClass->meta, 'BarTrait'), 'SubClass->meta->does("BarTrait")'; |
30 | |