Don't use $_ as loop variable when calling arbitrary code (RT#81072)
[gitmo/Moo.git] / xt / moose-does-moo-role.t
CommitLineData
bb8566e4 1use strictures 1;
2use Test::More;
3use Test::Exception;
4
5use Moo::HandleMoose;
6
7{
8 package MooRole;
9 use Moo::Role;
10
11 package MooRoledMooClass;
12 use Moo;
13 with 'MooRole';
14
15 package MooRoledMooseClass;
16 use Moose;
17 with 'MooRole';
18
19 package MooseParent;
20 use Moose;
21
22 has e => (
23 is => 'ro',
24 required => 1,
25 does => 'MooRole',
26 );
27
28 package MooParent;
29 use Moo;
30
31 has e => (
32 is => 'ro',
33 required => 1,
34 does => 'MooRole',
35 );
36}
37
38for my $parent (qw(MooseParent MooParent)) {
39 for my $child (qw(MooRoledMooClass MooRoledMooseClass)) {
40 lives_ok {
41 $parent->new(
42 e => $child->new(),
43 );
44 } "$parent instantiated with a $child delegate that does a MooRole";
45 }
46}
47
48done_testing;