let you use Hash::MultiValue everywhere if you like it
[catagits/Catalyst-Runtime.git] / t / more-psgi-compat.t
CommitLineData
4491e0cc 1#!/usr/bin/env perl
2
3use warnings;
4use strict;
5
6use FindBin;
7use Test::More;
8use HTTP::Request::Common;
9
10use lib "$FindBin::Bin/lib";
11use Catalyst::Test 'TestFromPSGI';
12
13{
14 ok my $response = request GET '/from_psgi_array',
15 'got welcome from a catalyst controller';
16
17 is $response->content, 'helloworldtoday',
18 'expected content body /from_psgi_array';
19}
20
21{
22 ok my $response = request GET '/from_psgi_code',
23 'got welcome from a catalyst controller';
24
25 is $response->content, 'helloworldtoday2',
26 'expected content body /from_psgi_code';
27}
28
29{
30 ok my $response = request GET '/from_psgi_code_itr',
31 'got welcome from a catalyst controller';
32
33 is $response->content, 'helloworldtoday3',
34 'expected content body /from_psgi_code_itr';
35}
36
88ba7793 37{
38 ok my($res, $c) = ctx_request(POST '/test_psgi_keys?a=1&b=2', [c=>3,d=>4]);
39
40 ok $c->req->env->{"psgix.input.buffered"}, "input is buffered";
41 ok $c->req->env->{"plack.request.http.body"};
42 ok my $body = $c->req->env->{"plack.request.body"};
43 ok my $query = $c->req->env->{"plack.request.query"};
44 ok my $merged = $c->req->env->{"plack.request.merged"};
45
46 is $body->get('c'), 3;
47 is $body->get('d'), 4;
48 is $query->get('a'), 1;
49 is $query->get('b'), 2;
50 is $merged->get('c'), 3;
51 is $merged->get('d'), 4;
52 is $merged->get('a'), 1;
53 is $merged->get('b'), 2;
54}
55
4491e0cc 56done_testing;