11 # I just needed a value to write to, since the 'after' sub return value is ignored.
12 has 'value' => (is => 'rw', isa => 'Str');
14 sub foo { $_[0]->value('foo'); }
23 after 'foo' => sub { $_[0]->value('after foo'); }
37 with 'parent_role', 'child_role1';
42 my $base_case = new my_class;
44 is($base_case->value, 'after foo', "after sub called for base case");
46 my $apply_child_role2 = new my_class;
47 Moose::Util::apply_all_roles($apply_child_role2, 'child_role2');
48 $apply_child_role2->foo();
49 is($apply_child_role2->value, 'after foo', "after sub called for base case + child_role2 added with apply_all_roles()");
51 my $ensure_child_role2 = new my_class;
52 Moose::Util::ensure_all_roles($ensure_child_role2, 'child_role2');
53 $ensure_child_role2->foo();
54 is($ensure_child_role2->value, 'after foo', "after sub called for base case + child_role2 added with ensure_all_roles()");