X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Faggregate%2Flive_component_controller_action_chained.t;h=d388a3b86c1ea71f4548c47bd18b6e748b57b6c9;hb=4e93cdb6d9403718baff430bc1bdc3245aa5236f;hp=0cebe9bfce1a4fa020a54a33bf02747dff472e91;hpb=41e7bd481acdafb23e08381f98c9e3732950bdc0;p=catagits%2FCatalyst-Runtime.git diff --git a/t/aggregate/live_component_controller_action_chained.t b/t/aggregate/live_component_controller_action_chained.t index 0cebe9b..d388a3b 100644 --- a/t/aggregate/live_component_controller_action_chained.t +++ b/t/aggregate/live_component_controller_action_chained.t @@ -1,5 +1,3 @@ -#!perl - use strict; use warnings; @@ -55,7 +53,7 @@ sub run_tests { { my $expected = undef; - ok( my $response = request('http://localhost/chained/foo/1/end'), + ok( my $response = request('http://localhost/chained/foo/1/end'), 'chained + local endpoint; missing last argument' ); is( $response->header('X-Catalyst-Executed'), $expected, 'Executed actions' ); @@ -114,7 +112,7 @@ sub run_tests { my $expected = join( ", ", @expected ); - ok( my $response = request('http://localhost/chained/foo2/10/20/end2/15/25'), + ok( my $response = request('http://localhost/chained/foo2/10/20/end2/15/25'), 'chained + local (2 args each)' ); is( $response->header('X-Catalyst-Executed'), $expected, 'Executed actions' ); @@ -409,7 +407,7 @@ sub run_tests { } # - # This is for testing if the arguments got passed to the actions + # This is for testing if the arguments got passed to the actions # correctly. # { @@ -778,6 +776,25 @@ sub run_tests { { my @expected = qw[ TestApp::Controller::Action::Chained->begin + TestApp::Controller::Action::Chained->chain_error_a + TestApp::Controller::Action::Chained->end + ]; + + my $expected = join( ", ", @expected ); + + ok( my $response = request('http://localhost/chained/chain_error/1/end/2'), + "Break a chain in the middle" ); + is( $response->header('X-Catalyst-Executed'), + $expected, 'Executed actions' ); + is( $response->content, 'FATAL ERROR: break in the middle of a chain', 'Content OK' ); + } + + # + # Test dieing in the middle of a chain. + # + { + my @expected = qw[ + TestApp::Controller::Action::Chained->begin TestApp::Controller::Action::Chained->chain_die_a TestApp::Controller::Action::Chained->end ]; @@ -788,7 +805,7 @@ sub run_tests { "Break a chain in the middle" ); is( $response->header('X-Catalyst-Executed'), $expected, 'Executed actions' ); - is( $response->content, 'FATAL ERROR: break in the middle of a chain', 'Content OK' ); + is( $response->content, 'FATAL ERROR: Caught exception in TestApp::Controller::Action::Chained->chain_die_a "die in the middle of a chain"', 'Content OK' ); } # @@ -1020,8 +1037,8 @@ sub run_tests { # With args given, run "all" ok( $response = request('http://localhost/argsorder/X'), 'Correct arg order ran' ); - is( $response->header('X-Catalyst-Executed'), - join(", ", + is( $response->header('X-Catalyst-Executed'), + join(", ", qw[ TestApp::Controller::Action::Chained->begin TestApp::Controller::Action::Chained::ArgsOrder->base @@ -1030,7 +1047,7 @@ sub run_tests { ]) ); is( $response->content, 'base; ; all; X', 'Content OK' ); - + } # @@ -1071,11 +1088,11 @@ sub run_tests { is( $response->header('X-Catalyst-Executed'), $expected, 'Executed actions' ); } - + # # */search # doc/* - # + # # request for doc/search should end up in doc/* { my @expected = qw[