X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FEngine%2FTest.pm;h=a5f9ca472e27018a8fd5fecde75ad76bec4a6906;hb=b77e7869b55e0d2df5aaa3a37ad2cca9c0989abc;hp=91553baa48dcb62406d73d381299e2ccd4f53206;hpb=c2e8e6fa308480a083f88f9fd82f835aae150c34;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Engine/Test.pm b/lib/Catalyst/Engine/Test.pm index 91553ba..a5f9ca4 100644 --- a/lib/Catalyst/Engine/Test.pm +++ b/lib/Catalyst/Engine/Test.pm @@ -3,6 +3,8 @@ package Catalyst::Engine::Test; use strict; use base 'Catalyst::Engine::HTTP::Base'; +use Catalyst::Utils; + =head1 NAME Catalyst::Engine::Test - Catalyst Test Engine @@ -38,27 +40,15 @@ This class overloads some methods from C. =cut sub run { - my $class = shift; - my $request = shift || '/'; - - unless ( ref $request ) { - - my $uri = - ( $request =~ m/http/i ) - ? URI->new($request) - : URI->new( 'http://localhost' . $request ); - - $request = $uri->canonical; - } - - unless ( ref $request eq 'HTTP::Request' ) { - $request = HTTP::Request->new( 'GET', $request ); - } + my ( $class, $request ) = @_; + + $request = Catalyst::Utils::request($request); - my $host = sprintf( '%s:%d', $request->uri->host, $request->uri->port ); - $request->header( 'Host' => $host ); + $request->header( + 'Host' => sprintf( '%s:%d', $request->uri->host, $request->uri->port ) + ); - my $http = Catalyst::Engine::Test::HTTP->new( + my $http = Catalyst::Engine::HTTP::Base::struct->new( address => '127.0.0.1', hostname => 'localhost', request => $request,