Added . support to xmlrpc
[catagits/Catalyst-Runtime.git] / t / engine / request / body.t
CommitLineData
06e1b616 1#!perl
2
3use strict;
4use warnings;
5
6use FindBin;
7use lib "$FindBin::Bin/../../lib";
8
9use Test::More tests => 10;
10use Catalyst::Test 'TestApp';
11
12use Catalyst::Request;
13use HTTP::Headers;
14use HTTP::Request::Common;
15
16{
17 my $creq;
18
19 my $request = POST( 'http://localhost/dump/request/',
20 'Content-Type' => 'text/plain',
21 'Content' => 'Hello Catalyst'
22 );
23
24 ok( my $response = request($request), 'Request' );
25 ok( $response->is_success, 'Response Successful 2xx' );
26 is( $response->content_type, 'text/plain', 'Response Content-Type' );
27 like( $response->content, qr/^bless\( .* 'Catalyst::Request' \)$/s, 'Content is a serialized Catalyst::Request' );
28
29 {
30 no strict 'refs';
31 ok( eval '$creq = ' . $response->content, 'Unserialize Catalyst::Request' );
32 }
33
34 isa_ok( $creq, 'Catalyst::Request' );
35 is( $creq->method, 'POST', 'Catalyst::Request method' );
36 is( $creq->content_type, 'text/plain', 'Catalyst::Request Content-Type' );
37 is( $creq->content_length, $request->content_length, 'Catalyst::Request Content-Length' );
2d752b2a 38 is( $creq->body, $request->content, 'Catalyst::Request Content' );
06e1b616 39}