test inheritance of builtin actions in mainapp.
[catagits/Catalyst-Runtime.git] / t / live / component / controller / action / begin.t
CommitLineData
fbcc39ad 1#!perl
2
3use strict;
4use warnings;
5
6use FindBin;
7use lib "$FindBin::Bin/../../../lib";
8
232fd394 9our $iters;
10
11BEGIN { $iters = $ENV{CAT_BENCH_ITERS} || 2; }
12
13use Test::More tests => 7*$iters;
fbcc39ad 14use Catalyst::Test 'TestApp';
15
232fd394 16if ( $ENV{CAT_BENCHMARK} ) {
17 require Benchmark;
5a6c7ff6 18 Benchmark::timethis( $iters, \&run_tests );
232fd394 19}
20else {
21 for ( 1 .. $iters ) {
22 run_tests();
23 }
24}
25
26sub run_tests {
27
d8c66af5 28 {
29 my @expected = qw[
30 TestApp::Controller::Action::Begin->begin
31 TestApp::Controller::Action::Begin->default
32 TestApp::View::Dump::Request->process
01ba879f 33 TestApp->end
d8c66af5 34 ];
fbcc39ad 35
d8c66af5 36 my $expected = join( ", ", @expected );
fbcc39ad 37
d8c66af5 38 ok( my $response = request('http://localhost/action/begin'),
39 'Request' );
40 ok( $response->is_success, 'Response Successful 2xx' );
41 is( $response->content_type, 'text/plain', 'Response Content-Type' );
42 is( $response->header('X-Catalyst-Action'), 'default', 'Test Action' );
43 is(
44 $response->header('X-Test-Class'),
45 'TestApp::Controller::Action::Begin',
46 'Test Class'
47 );
48 is( $response->header('X-Catalyst-Executed'),
49 $expected, 'Executed actions' );
50 like( $response->content, qr/'Catalyst::Request'/,
51 'Content is a serialized Catalyst::Request' );
52 }
fbcc39ad 53}