fix the bug Catalyst::Engine double decodes %2b back to ' ' (space)
[catagits/Catalyst-Runtime.git] / t / live_engine_request_parameters.t
index 851d4c5..1f1091f 100644 (file)
@@ -6,7 +6,7 @@ use warnings;
 use FindBin;
 use lib "$FindBin::Bin/lib";
 
-use Test::More tests => 30;
+use Test::More tests => 35;
 use Catalyst::Test 'TestApp';
 
 use Catalyst::Request;
@@ -39,6 +39,16 @@ use URI;
 
 {
     my $creq;
+    ok( my $response = request("http://localhost/dump/request?q=foo%2bbar"),
+        'Request' );
+    ok( $response->is_success, 'Response Successful 2xx' );
+    is( $response->content_type, 'text/plain', 'Response Content-Type' );
+    ok( eval '$creq = ' . $response->content );
+    is $creq->{parameters}->{q}, 'foo+bar', '%2b not double decoded';
+}
+
+{
+    my $creq;
 
     my $parameters = {
         'a'     => [qw(A b C d E f G)],