X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FTestApp%2FController%2FAction%2FForward.pm;h=6a74ddd64f64abff6adea83af95f1e746ec433b5;hb=a1c8f974699a855b480845bb0e0afb570f346e99;hp=8a88e7f4e2c29cd507aca4fe04f4c02673338613;hpb=e5d7f18ca33ac9a5df3e22a5d7161a4a3b2cce36;p=catagits%2FCatalyst-Runtime.git diff --git a/t/lib/TestApp/Controller/Action/Forward.pm b/t/lib/TestApp/Controller/Action/Forward.pm index 8a88e7f..6a74ddd 100644 --- a/t/lib/TestApp/Controller/Action/Forward.pm +++ b/t/lib/TestApp/Controller/Action/Forward.pm @@ -3,7 +3,7 @@ package TestApp::Controller::Action::Forward; use strict; use base 'TestApp::Controller::Action'; -sub one : Relative { +sub one : Local { my ( $self, $c ) = @_; $c->forward('two'); } @@ -13,7 +13,7 @@ sub two : Private { $c->forward('three'); } -sub three : Relative { +sub three : Local { my ( $self, $c ) = @_; $c->forward('four'); } @@ -23,29 +23,51 @@ sub four : Private { $c->forward('/action/forward/five'); } -sub five : Relative { +sub five : Local { my ( $self, $c ) = @_; $c->forward('TestApp::View::Dump::Request'); } +sub six : Local { + my ( $self, $c ) = @_; + $c->forward('TestApp::View::Dump::False'); +} -sub jojo : Relative { + +sub jojo : Local { my ( $self, $c ) = @_; $c->forward('one'); $c->forward('three'); } -sub inheritance : Relative { +sub inheritance : Local { my ( $self, $c ) = @_; - $c->forward('engine/response/cookies/one'); + $c->forward('/action/inheritance/a/b/default'); $c->forward('five'); } -sub global : Relative { +sub global : Local { my ( $self, $c ) = @_; - $c->forward('/global_action'); + $c->forward( '/global_action' ); +} + +sub with_args : Local { + my ( $self, $c, $orig ) = @_; + $c->forward( 'args',[qq/new/] ); + $c->res->body( $c->req->args->[0] ); +} + +sub with_method_and_args : Local { + my ( $self, $c, $orig ) = @_; + $c->forward( qw/TestApp::Controller::Action::Forward args/, [qq/new/] ); + $c->res->body( $c->req->args->[0] ); } +sub args : Local { + my ( $self, $c, $val ) = @_; + die "Expected argument 'new', got '$val'" unless $val eq 'new'; + die "passed argument does not match args" unless $val eq $c->req->args->[0]; +} 1;