-#!perl
-
use strict;
use warnings;
BEGIN {
$EXPECTED_ENV_VAR = "CATALYSTTEST$$"; # has to be uppercase otherwise fails on Win32
- $EXPECTED_ENV_VAL = $ENV{$EXPECTED_ENV_VAR}
- = "Test env value " . rand(100000);
+ $EXPECTED_ENV_VAL = "Test env value " . rand(100000);
}
use Test::More;
use HTTP::Headers;
use HTTP::Request::Common;
-plan skip_all => 'Does not work in live tests' if ( $ENV{CATALYST_SERVER} );
+my $response = request("http://localhost/dump/env", {
+ extra_env => { $EXPECTED_ENV_VAR => $EXPECTED_ENV_VAL },
+});
+
+ok( $response, 'Request' );
+ok( $response->is_success, 'Response Successful 2xx' );
+is( $response->content_type, 'text/plain', 'Response Content-Type' );
+
+my $env;
+ok( eval '$env = ' . $response->content, 'Unserialize Catalyst::Request' );
+is ref($env), 'HASH';
+ok exists($env->{PATH_INFO}), 'Have a PATH_INFO env var for dump/env';
+SKIP:
{
- my $env;
-
- ok( my $response = request("http://localhost/dump/env"),
- 'Request' );
- ok( $response->is_success, 'Response Successful 2xx' );
- is( $response->content_type, 'text/plain', 'Response Content-Type' );
- ok( eval '$env = ' . $response->content, 'Unserialize Catalyst::Request' );
- is ref($env), 'HASH';
- ok exists($env->{PATH}), 'Have a PATH env var';
-
- SKIP:
- {
- if ( $ENV{CATALYST_SERVER} ) {
- skip 'Using remote server', 1;
- }
- is $env->{$EXPECTED_ENV_VAR}, $EXPECTED_ENV_VAL,
- 'Value we set as expected';
+ if ( $ENV{CATALYST_SERVER} ) {
+ skip 'Using remote server', 1;
}
+ is $env->{$EXPECTED_ENV_VAR}, $EXPECTED_ENV_VAL,
+ 'Value we set as expected for /dump/env'
}
done_testing;