{
package Molecule;
- use strict;
- use warnings;
use Moose::Role;
package Molecule::Organic;
- use strict;
- use warnings;
use Moose::Role;
with 'Molecule';
excludes 'Molecule::Inorganic';
package Molecule::Inorganic;
- use strict;
- use warnings;
use Moose::Role;
with 'Molecule';
{
package My::Test1;
- use strict;
- use warnings;
use Moose;
::lives_ok {
} '... adding the role (w/ excluded roles) okay';
package My::Test2;
- use strict;
- use warnings;
use Moose;
::throws_ok {
with 'Molecule::Organic', 'Molecule::Inorganic';
- } qr/Conflict detected: Class::MOP::Class::__ANON__::SERIAL::1 excludes role \'Molecule::Inorganic\'/,
+ } qr/Conflict detected: .+ excludes role \'Molecule::Inorganic\'/,
'... adding the role w/ excluded role conflict dies okay';
package My::Test3;
- use strict;
- use warnings;
use Moose;
::lives_ok {
{
package Methane;
- use strict;
- use warnings;
use Moose;
with 'Molecule::Organic';
package My::Test4;
- use strict;
- use warnings;
use Moose;
extends 'Methane';