actually document the new request body_data method
[catagits/Catalyst-Runtime.git] / t / aggregate / unit_core_engine_fixenv-lighttpd.t
1 #!perl
2
3 use strict;
4 use warnings;
5
6 use Test::More;
7
8 use Catalyst ();
9
10 my %env = (
11     'SCRIPT_NAME'          => '/bar',
12     'SERVER_NAME'          => 'localhost:8000',
13     'HTTP_ACCEPT_ENCODING' => 'gzip,deflate',
14     'HTTP_CONNECTION'      => 'keep-alive',
15     'PATH_INFO'            => '',
16     'HTTP_ACCEPT'          => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
17     'REQUEST_METHOD'       => 'GET',
18     'SCRIPT_FILENAME'      => '/tmp/Foo/root/bar',
19     'HTTP_ACCEPT_CHARSET'  => 'ISO-8859-1,utf-8;q=0.7,*;q=0.7',
20     'SERVER_SOFTWARE'      => 'lighttpd/1.4.15',
21     'QUERY_STRING'         => '',
22     'REMOTE_PORT'          => '22207',
23     'SERVER_PORT'          => 8000,
24     'REDIRECT_STATUS'      => '200',
25     'HTTP_ACCEPT_LANGUAGE' => 'en-us,en;q=0.5',
26     'REMOTE_ADDR'          => '127.0.0.1',
27     'FCGI_ROLE'            => 'RESPONDER',
28     'HTTP_KEEP_ALIVE'      => '300',
29     'SERVER_PROTOCOL'      => 'HTTP/1.1',
30     'REQUEST_URI'          => '/bar',
31     'GATEWAY_INTERFACE'    => 'CGI/1.1',
32     'SERVER_ADDR'          => '127.0.0.1',
33     'DOCUMENT_ROOT'        => '/tmp/Foo/root',
34     'HTTP_HOST'            => 'localhost:8000',
35 );
36
37 sub fix_env {
38     my (%input_env) = @_;
39
40     my $mangled_env;
41     my $app = Catalyst->apply_default_middlewares(sub {
42         my ($env) = @_;
43         $mangled_env = $env;
44         return [ 200, ['Content-Type' => 'text/plain'], [''] ];
45     });
46
47     $app->({ %input_env, 'psgi.url_scheme' => 'http' });
48     return %{ $mangled_env };
49 }
50
51 my %fixed_env = fix_env(%env);
52
53 is($fixed_env{PATH_INFO}, '/bar', 'check PATH_INFO');
54 ok(!exists($fixed_env{SCRIPT_NAME}) || !length($fixed_env{SCRIPT_NAME}),
55     'check SCRIPT_NAME');
56
57 done_testing;