Updated number of tests for live_engine_request_parameters
[catagits/Catalyst-Runtime.git] / t / aggregate / live_engine_request_parameters.t
index 56a7074..d2a91f0 100644 (file)
@@ -1,12 +1,10 @@
-#!perl
-
 use strict;
 use warnings;
 
 use FindBin;
 use lib "$FindBin::Bin/../lib";
 
-use Test::More tests => 53;
+use Test::More tests => 56;
 use Catalyst::Test 'TestApp';
 
 use Catalyst::Request;
@@ -30,12 +28,12 @@ use HTTP::Request::Common;
         'Content is a serialized Catalyst::Request'
     );
     ok( eval '$creq = ' . $response->content, 'Unserialize Catalyst::Request' );
-    isa_ok( $creq, 'Catalyst::Request' );
+    isa_ok( $creq, 'Catalyst::Request' )
+      or fail("EXCEPTION: $@");
     is( $creq->method, 'GET', 'Catalyst::Request method' );
     is_deeply( $creq->parameters, $parameters,
         'Catalyst::Request parameters' );
 }
-
 {
     my $creq;
     ok( my $response = request("http://localhost/dump/request?q=foo%2bbar"),
@@ -71,8 +69,6 @@ use HTTP::Request::Common;
         'Content-Type' => 'application/x-www-form-urlencoded'
     );
 
-    unshift( @{ $parameters->{a} }, 1, 2, 3 );
-
     ok( my $response = request($request), 'Request' );
     ok( $response->is_success, 'Response Successful 2xx' );
     is( $response->content_type, 'text/plain', 'Response Content-Type' );
@@ -84,6 +80,9 @@ use HTTP::Request::Common;
     ok( eval '$creq = ' . $response->content, 'Unserialize Catalyst::Request' );
     isa_ok( $creq, 'Catalyst::Request' );
     is( $creq->method, 'POST', 'Catalyst::Request method' );
+    is_deeply( $creq->body_parameters, $parameters,
+               'Catalyst::Request body_parameters' );
+    unshift( @{ $parameters->{a} }, 1, 2, 3 );
     is_deeply( $creq->parameters, $parameters,
         'Catalyst::Request parameters' );
     is_deeply( $creq->arguments, [qw(a b)], 'Catalyst::Request arguments' );
@@ -116,14 +115,21 @@ use HTTP::Request::Common;
 {
     my $creq;
     
-    my $parameters = {
+    my $body_parameters = {
         a     => 1,
         blank => '',
     };
+    my $query_parameters = {
+      'query string' => undef
+    };
+    my $parameters = {
+      %$body_parameters,
+      %$query_parameters
+    };
 
     my $request = POST(
         'http://localhost/dump/request/a/b?query+string',
-        'Content'      => $parameters,
+        'Content'      => $body_parameters,
         'Content-Type' => 'application/x-www-form-urlencoded'
     );
     
@@ -131,6 +137,8 @@ use HTTP::Request::Common;
     ok( eval '$creq = ' . $response->content, 'Unserialize Catalyst::Request' );
     is( $creq->uri->query, 'query+string', 'Catalyst::Request POST query_string' );
     is( $creq->query_keywords, 'query string', 'Catalyst::Request query_keywords' );
+    is_deeply( $creq->query_parameters, $query_parameters, 'Catalyst::Request query_parameters' );
+    is_deeply( $creq->body_parameters, $body_parameters, 'Catalyst::Request body_parameters' );
     is_deeply( $creq->parameters, $parameters, 'Catalyst::Request parameters' );
     
     ok( $response = request('http://localhost/dump/request/a/b?x=1&y=1&z=1'), 'Request' );