Upgrade that debug statement to a warning + test we get the warning we expect to
Tomas Doran [Fri, 20 Feb 2009 16:58:59 +0000 (16:58 +0000)]
lib/Catalyst.pm
t/unit_core_plugin.t

index f990429..278a2f5 100644 (file)
@@ -897,7 +897,7 @@ sub plugin {
     my ( $class, $name, $plugin, @args ) = @_;
 
     # See block comment in t/unit_core_plugin.t    
-    $class->log->debug(qq/Adding plugin using the ->plugin method is deprecated, and will be removed in Catalyst 5.9/);
+    $class->log->warn(qq/Adding plugin using the ->plugin method is deprecated, and will be removed in Catalyst 5.9/);
     
     $class->_register_plugin( $plugin, 1 );
 
index 97f8d7b..cfa3370 100644 (file)
@@ -2,8 +2,9 @@
 
 use strict;
 use warnings;
+use Test::MockObject::Extends;
 
-use Test::More tests => 22;
+use Test::More tests => 24;
 
 use lib 't/lib';
 
@@ -16,13 +17,29 @@ use lib 't/lib';
     sub count { $count++ }
 }
 
+my $warnings = 0;
+
+use PluginTestApp;
+my $logger = Test::MockObject::Extends->new(PluginTestApp->log);
+$logger->mock('warn', sub {
+    if ($_[1] =~ /plugin method is deprecated/) {
+        $warnings++;
+        return;
+    }
+    die "Caught unexpected warning: " . $_[1];
+});
+#PluginTestApp->log($logger);
+
 use Catalyst::Test qw/PluginTestApp/;
 
 ok( get("/compile_time_plugins"), "get ok" );
+is( $warnings, 0, 'no warnings' );
 # FIXME - Run time plugin support is insane, and should be removed
 #         for Catalyst 5.9
 ok( get("/run_time_plugins"),     "get ok" );
 
+is( $warnings, 1, '1 warning' );
+
 use_ok 'TestApp';
 my @expected = qw(
   Catalyst::Plugin::Test::Errors