2 # This is automatically generated by author/import-moose-test.pl.
3 # DO NOT EDIT THIS FILE. ANY CHANGES WILL BE LOST!!!
4 use t::lib::MooseCompat;
8 $TODO = q{Mouse is not yet completed};
37 with qw( Role::A Role::B );
63 for my $thing ( 'Foo', Foo->new, 'Foo::Child', Foo::Child->new ) {
64 my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
65 $name .= ' (immutable)' if $thing->meta->is_immutable;
68 !$thing->does('Role::A'),
69 "$name does not do Role::A"
72 !$thing->does('Role::B'),
73 "$name does not do Role::B"
77 !$thing->does( Role::A->meta ),
78 "$name does not do Role::A (passed as object)"
81 !$thing->does( Role::B->meta ),
82 "$name does not do Role::B (passed as object)"
86 !$thing->DOES('Role::A'),
87 "$name does not do Role::A (using DOES)"
90 !$thing->DOES('Role::B'),
91 "$name does not do Role::B (using DOES)"
95 for my $thing ( 'Bar', Bar->new, 'Bar::Child', Bar::Child->new ) {
96 my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
97 $name .= ' (immutable)' if $thing->meta->is_immutable;
100 $thing->does('Role::A'),
104 !$thing->does('Role::B'),
105 "$name does not do Role::B"
109 $thing->does( Role::A->meta ),
110 "$name does Role::A (passed as object)"
113 !$thing->does( Role::B->meta ),
114 "$name does not do Role::B (passed as object)"
118 $thing->DOES('Role::A'),
119 "$name does Role::A (using DOES)"
122 !$thing->DOES('Role::B'),
123 "$name does not do Role::B (using DOES)"
127 for my $thing ( 'Baz', Baz->new, 'Baz::Child', Baz::Child->new ) {
128 my $name = ref $thing ? (ref $thing) . ' object' : "$thing class";
129 $name .= ' (immutable)' if $thing->meta->is_immutable;
132 $thing->does('Role::A'),
136 $thing->does('Role::B'),
141 $thing->does( Role::A->meta ),
142 "$name does Role::A (passed as object)"
145 $thing->does( Role::B->meta ),
146 "$name does Role::B (passed as object)"
150 $thing->DOES('Role::A'),
151 "$name does Role::A (using DOES)"
154 $thing->DOES('Role::B'),
155 "$name does Role::B (using DOES)"
160 qw( Foo Bar Baz Foo::Child Bar::Child Baz::Child );