X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FCatalyst%2FPlugin%2FTest%2FPlugin.pm;h=0ec67b3a319623145b5531e78963b9fe26816aff;hb=35b3434762d426e0cd5e04eb735291f8ca7ea08e;hp=5cb6e4ab151d82be220daa76479d1894adc7db15;hpb=ae29b412955743885e80350085167b54b69672da;p=catagits%2FCatalyst-Runtime.git diff --git a/t/lib/Catalyst/Plugin/Test/Plugin.pm b/t/lib/Catalyst/Plugin/Test/Plugin.pm index 5cb6e4a..0ec67b3 100644 --- a/t/lib/Catalyst/Plugin/Test/Plugin.pm +++ b/t/lib/Catalyst/Plugin/Test/Plugin.pm @@ -4,49 +4,34 @@ use strict; use warnings; use MRO::Compat; -use base qw/Catalyst::Base Class::Data::Inheritable/; +use base qw/Class::Data::Inheritable/; __PACKAGE__->mk_classdata('ran_setup'); sub setup { my $c = shift; $c->ran_setup('1'); -} -sub prepare { + return $c->next::method( @_ ); +} +sub prepare { my $class = shift; -# Note: This use of NEXT is deliberately left here (without a use NEXT) -# to ensure back compat, as NEXT always used to be loaded, but -# is now replaced by Class::C3::Adopt::NEXT. - my $c = $class->NEXT::prepare(@_); + my $c = $class->next::method(@_); $c->response->header( 'X-Catalyst-Plugin-Setup' => $c->ran_setup ); return $c; - } -# Note: This is horrible, but Catalyst::Plugin::Server forces the body to +# Note: Catalyst::Plugin::Server forces the body to # be parsed, by calling the $c->req->body method in prepare_action. # We need to test this, as this was broken by 5.80. See also -# t/aggregate/live_engine_request_body.t. Better ways to test this -# appreciated if you have suggestions :) -{ - my $have_req_body = 0; - sub prepare_action { - my $c = shift; - $have_req_body++ if $c->req->body; - $c->next::method(@_); - } - sub have_req_body_in_prepare_action : Local { - my ($self, $c) = @_; - $c->res->body($have_req_body); - } -} - -sub end : Private { - my ($self,$c) = @_; +# t/aggregate/live_engine_request_body.t. +sub prepare_action { + my $c = shift; + $c->res->header('X-Have-Request-Body', 1) if $c->req->body; + $c->next::method(@_); } 1;