[Catalyst-commits] r10164 - in Catalyst-Plugin-RunAfterRequest/trunk: . t

t0m at dev.catalyst.perl.org t0m at dev.catalyst.perl.org
Thu May 14 23:40:40 GMT 2009


Author: t0m
Date: 2009-05-14 23:40:39 +0000 (Thu, 14 May 2009)
New Revision: 10164

Added:
   Catalyst-Plugin-RunAfterRequest/trunk/t/00load_and_sane.t
Modified:
   Catalyst-Plugin-RunAfterRequest/trunk/Makefile.PL
Log:
Plugins which ->can('new') are a massive pile of suck. Ergo, you no have tests to ensure you don't have a new method. This commit was brought to you by rafl not having CPANd the appropriate Test:: module yet

Modified: Catalyst-Plugin-RunAfterRequest/trunk/Makefile.PL
===================================================================
--- Catalyst-Plugin-RunAfterRequest/trunk/Makefile.PL	2009-05-14 22:15:27 UTC (rev 10163)
+++ Catalyst-Plugin-RunAfterRequest/trunk/Makefile.PL	2009-05-14 23:40:39 UTC (rev 10164)
@@ -13,7 +13,9 @@
 requires 'Moose';
 requires 'Moose::Role';
 requires 'MRO::Compat';
-requires 'Test::More';
 
+test_requires 'Test::More';
+test_requires 'Module::Find';
+
 WriteAll;
 

Added: Catalyst-Plugin-RunAfterRequest/trunk/t/00load_and_sane.t
===================================================================
--- Catalyst-Plugin-RunAfterRequest/trunk/t/00load_and_sane.t	                        (rev 0)
+++ Catalyst-Plugin-RunAfterRequest/trunk/t/00load_and_sane.t	2009-05-14 23:40:39 UTC (rev 10164)
@@ -0,0 +1,24 @@
+use strict;
+use warnings;
+
+use FindBin qw/$Bin/;
+use lib "$Bin/lib";
+
+use List::MoreUtils qw/any all/;
+use Module::Find;
+setmoduledirs("$Bin/../lib", "$Bin/lib");
+
+use Test::More tests => 3;
+use Test::Exception;
+
+my @modules = (
+    'Catalyst::Plugin::RunAfterRequest',
+    'Catalyst::Model::Role::RunAfterRequest',
+);
+
+use_ok $_ for (@modules);
+
+ok ! any(sub { $_->can('new')}, @modules),
+    'new methods in plugins which mix into an app class not cool';
+
+




More information about the Catalyst-commits mailing list