don't attempt to fix mutual requires for subclasses that rely on backcompat
[gitmo/Role-Tiny.git] / t / subclass.t
CommitLineData
c49573de 1use strict;
2use warnings FATAL => 'all';
3use Test::More;
4use Test::Fatal;
5
6my $backcompat_called;
7{
8 package RoleExtension;
9 use base 'Role::Tiny';
10
11 sub apply_single_role_to_package {
12 my $me = shift;
13 $me->SUPER::apply_single_role_to_package(@_);
14 $backcompat_called++;
15 }
16}
17
18{
19 package Role1;
20 $INC{'Role1.pm'} = __FILE__;
21 use Role::Tiny;
22 sub sub1 {}
23}
24
25{
26 package Role2;
27 $INC{'Role2.pm'} = __FILE__;
28 use Role::Tiny;
29 sub sub2 {}
30}
31
32{
33 package Class1;
34 RoleExtension->apply_roles_to_package(__PACKAGE__, 'Role1', 'Role2');
35}
36
37is $backcompat_called, 2,
38 'overridden apply_single_role_to_package called for backcompat';
39
40done_testing;