1
2use strict;
3use Test::More tests => 2;
4use MRO::Compat;
5
6use lib qw(t/lib);
7use DBICTest; # do not remove even though it is not used
8
9{
10package AAA;
11
12use base "DBIx::Class::Core";
13
14package BBB;
15
16use base 'AAA';
17
18#Injecting a direct parent.
19__PACKAGE__->inject_base( __PACKAGE__, 'AAA' );
20
21
22package CCC;
23
24use base 'AAA';
25
26#Injecting an indirect parent.
27__PACKAGE__->inject_base( __PACKAGE__, 'DBIx::Class::Core' );
28}
29
30eval { mro::get_linear_isa('BBB'); };
31ok (! $@, "Correctly skipped injecting a direct parent of class BBB");
32
33eval { mro::get_linear_isa('CCC'); };
34ok (! $@, "Correctly skipped injecting an indirect parent of class BBB");
35