remove direct use of Class::C3 in tests
Graham Knop [Fri, 29 Jul 2016 13:32:56 +0000 (09:32 -0400)]
Makefile.PL
t/01-basic.t
t/lib/AnotherModule.pm [new file with mode: 0644]
t/lib/MyModule/OwnComponent.pm
t/lib/MyModule/Plugin/Foo.pm

index 585041b..338ce6b 100644 (file)
@@ -17,10 +17,6 @@ requires  'Class::Inspector'    => '1.23';
 # isn't needed. However, some existing code relies on us loading Class::C3. We
 # don't want to break it just yet. Therefore we depend directly on Class::C3 as
 # well.
-
-### !!! IMPORTANT !!! ###
-# tests currently rely on Class::C3 availability, by requiring it directly
-# will need adjustment if the require is removed
 requires  'Class::C3' => '0.20';
 
 resources repository => 'git://git.shadowcat.co.uk/p5sagit/Class-C3-Componentised.git';
index d4603d0..8bc81fd 100644 (file)
@@ -96,7 +96,7 @@ like( $@, qr/Invalid class name 'ENDS::WITH::COLONS::'/, 'Throw on Class::' );
   ok( $retval, 'PAR package "loaded"' );
   
   # see if we can still load stuff with the coderef present
-  $retval = eval { MyModule->load_optional_class('Class::C3') };
+  $retval = eval { MyModule->load_optional_class('AnotherModule') };
   ok( !$@, 'load_optional_class did not throw' ) || diag $@;
-  ok( $retval, 'Class::C3 loaded' );
+  ok( $retval, 'AnotherModule loaded' );
 }
diff --git a/t/lib/AnotherModule.pm b/t/lib/AnotherModule.pm
new file mode 100644 (file)
index 0000000..841ff5f
--- /dev/null
@@ -0,0 +1,2 @@
+package AnotherModule;
+1;
index 56cff2b..b89b5fe 100644 (file)
@@ -1,7 +1,8 @@
 package # hide from pause
   MyModule::OwnComponent;
 
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
 
 sub message {
   my $self = shift;
index 77f990c..0f12956 100644 (file)
@@ -1,7 +1,8 @@
 package # hide from pause
   MyModule::Plugin::Foo;
 
-use Class::C3;
+use MRO::Compat;
+use mro 'c3';
 
 sub message { 
   "Foo";