X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F10_Inconsistent_hierarchy.t;h=ccf7e5536a1f7247317300a75ba2537360444c3f;hb=ef29cd706106f8ab6e7b0c25e8dc832bb337c5ed;hp=2378ea3a4c564f0c54ac827541d668be9d3f23bf;hpb=2ffffc6d4b76c053ddf254ef9356c92bba7d2acf;p=gitmo%2FClass-C3.git diff --git a/t/10_Inconsistent_hierarchy.t b/t/10_Inconsistent_hierarchy.t index 2378ea3..ccf7e55 100644 --- a/t/10_Inconsistent_hierarchy.t +++ b/t/10_Inconsistent_hierarchy.t @@ -3,11 +3,7 @@ use strict; use warnings; -use Test::More tests => 2; - -BEGIN { - use_ok('Class::C3'); -} +use Test::More tests => 1; =pod @@ -26,32 +22,32 @@ except TypeError: =cut -{ - package X; - use Class::C3; - - package Y; - use Class::C3; - - package XY; - use Class::C3; - use base ('X', 'Y'); - - package YX; - use Class::C3; - use base ('Y', 'X'); - - package Z; - # use Class::C3; << Dont do this just yet ... - use base ('XY', 'YX'); -} - -Class::C3::initialize(); - -eval { +eval q{ + { + package X; + use Class::C3; + + package Y; + use Class::C3; + + package XY; + use Class::C3; + use base ('X', 'Y'); + + package YX; + use Class::C3; + use base ('Y', 'X'); + + package Z; + eval 'use Class::C3' if $Class::C3::C3_IN_CORE; + use base ('XY', 'YX'); + } + + Class::C3::initialize(); + # now try to calculate the MRO # and watch it explode :) - Class::C3::calculateMRO('Z') + Class::C3::calculateMRO('Z'); }; #diag $@; -like($@, qr/^Inconsistent hierarchy/, '... got the right error with an inconsistent hierarchy'); +like($@, qr/Inconsistent hierarchy /, '... got the right error with an inconsistent hierarchy');