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=804143deca6f2bebfc87cc78cf397201b6028bc5;hp=99ea3c76f51328a234b172543d0d67fb94ff153f;hpb=9af4ee013b23e7241d4664ea39952fa3b20f4b7f;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 99ea3c7..d388a3b 100644 --- a/t/aggregate/live_component_controller_action_chained.t +++ b/t/aggregate/live_component_controller_action_chained.t @@ -53,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' ); @@ -112,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' ); @@ -407,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. # { @@ -776,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 ]; @@ -786,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' ); } # @@ -1018,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 @@ -1028,7 +1047,7 @@ sub run_tests { ]) ); is( $response->content, 'base; ; all; X', 'Content OK' ); - + } # @@ -1069,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[