X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FTest%2FWWW%2FMechanize%2FCatalyst.pm;h=0cd3ef52b661f1496c9b7dfd84485c8bd1f4992c;hb=39ba6f9a7186eeac9e5f1be7c2de248d87740b3e;hp=eb98a67e89f714e7275083c2ee3759a2b181e42a;hpb=249b4dd4f8916278b076d8a604d8870440e59c9b;p=catagits%2FTest-WWW-Mechanize-Catalyst.git diff --git a/lib/Test/WWW/Mechanize/Catalyst.pm b/lib/Test/WWW/Mechanize/Catalyst.pm index eb98a67..0cd3ef5 100644 --- a/lib/Test/WWW/Mechanize/Catalyst.pm +++ b/lib/Test/WWW/Mechanize/Catalyst.pm @@ -12,7 +12,7 @@ extends 'Test::WWW::Mechanize', 'Moose::Object'; #use namespace::clean -execept => 'meta'; -our $VERSION = '0.54'; +our $VERSION = '0.55'; our $APP_CLASS; my $Test = Test::Builder->new(); @@ -126,6 +126,17 @@ sub _make_request { return $response; } +sub _set_host_header { + my ( $self, $request ) = @_; + # If there's no Host header, set one. + unless ($request->header('Host')) { + my $host = $self->has_host + ? $self->host + : $request->uri->host; + $request->header('Host', $host); + } +} + sub _do_catalyst_request { my ($self, $request) = @_; @@ -140,14 +151,7 @@ sub _do_catalyst_request { return $self->_do_remote_request($request) if $ENV{CATALYST_SERVER}; - # If there's no Host header, set one. - unless ($request->header('Host')) { - my $host = $self->has_host - ? $self->host - : $uri->host; - - $request->header('Host', $host); - } + $self->_set_host_header($request); my $res = $self->_check_external_request($request); return $res if $res; @@ -219,6 +223,7 @@ sub _do_remote_request { $request->uri->host( $server->host ); $request->uri->port( $server->port ); $request->uri->path( $server->path . $request->uri->path ); + $self->_set_host_header($request); return $self->SUPER::_make_request($request); }