whitespace cleanup
[catagits/Catalyst-Runtime.git] / t / lib / CDICompatTestPlugin.pm
index 43b4270..78d471a 100644 (file)
@@ -8,20 +8,35 @@ package CDICompatTestPlugin;
 # stuff, as C::A::Plugin::Credential::Password is added to the plugin
 # list, and that uses base C::A::C::P class, does the mk_accessors.
 
-# If a class data method called _config hasn't been created in 
+# If a class data method called _config hasn't been created in
 # MyApp ($app below), then our call to ->config gets our accessor
 # (rather than the class data one), and we fail..
 
 use strict;
 use warnings;
 use base qw/Class::Accessor::Fast/;
+use MRO::Compat;
 __PACKAGE__->mk_accessors(qw/_config/);
 
 sub setup {
     my $app = shift;
 
     $app->config;
-    $app->NEXT::setup(@_);
+    $app->next::method(@_);
+}
+
+# However, if we are too enthusiastic about adding accessors to the
+# MyApp package, then this method isn't called (as there is a local
+# symbol already).
+
+# Note - use a different package here, so that Moose's
+# package detection code doesn't get confused..
+$CDICompatTestPlugin::Data::HAS_RUN_SETUP_FINISHED = 0;
+
+sub setup_finished {
+    my $app = shift;
+    $CDICompatTestPlugin::Data::HAS_RUN_SETUP_FINISHED = 1;
+    $app->next::method(@_);
 }
 
 1;