4 use Test::More tests => 5;
8 package MyRole::Requires;
9 use MooseX::Role::Parameterized;
11 parameter requires => (
18 requires $p->requires;
24 MyRole::Requires->meta->generate_role(requires => $_)->name
29 Moose::Meta::Class->create_anon_class(
30 roles => [ requires_names('alpha') ],
32 } qr/'Moose::Meta::Role::__ANON__::SERIAL::\d+' requires the method 'alpha' to be implemented by 'Class::MOP::Class::__ANON__::SERIAL::\d+'/;
35 Moose::Meta::Class->create_anon_class(
39 roles => [ requires_names('alpha') ],
44 Moose::Meta::Class->create_anon_class(
48 roles => [ requires_names('alpha', 'beta') ],
50 } qr/'Moose::Meta::Role::__ANON__::SERIAL::\d+\|Moose::Meta::Role::__ANON__::SERIAL::\d+' requires the method 'beta' to be implemented by 'Class::MOP::Class::__ANON__::SERIAL::\d+'/;
53 Moose::Meta::Class->create_anon_class(
57 roles => [ requires_names('alpha', 'beta') ],
59 } qr/'Moose::Meta::Role::__ANON__::SERIAL::\d+\|Moose::Meta::Role::__ANON__::SERIAL::\d+' requires the method 'alpha' to be implemented by 'Class::MOP::Class::__ANON__::SERIAL::\d+'/;
62 Moose::Meta::Class->create_anon_class(
67 roles => [ requires_names('alpha', 'beta') ],