diff options
author | Jesse Luehrs <doy@tozt.net> | 2012-07-18 16:43:57 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2012-07-18 16:43:57 -0500 |
commit | b275579910d410e7f9ecff88cccdeb673191d332 (patch) | |
tree | b1ca4397924ad7a0dd46e9f693edca7eba82a9cf /t/response-redirect.t | |
parent | a2986198eb809d38bd99e7c56cd80e27ff6394f0 (diff) | |
download | web-request-b275579910d410e7f9ecff88cccdeb673191d332.tar.gz web-request-b275579910d410e7f9ecff88cccdeb673191d332.zip |
import the Plack::Response test suite
Diffstat (limited to 't/response-redirect.t')
-rw-r--r-- | t/response-redirect.t | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/t/response-redirect.t b/t/response-redirect.t new file mode 100644 index 0000000..5e6f356 --- /dev/null +++ b/t/response-redirect.t @@ -0,0 +1,32 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; + +use Web::Response; + +{ + my $res = Web::Response->new; + $res->redirect('http://www.google.com/'); + is $res->location, 'http://www.google.com/'; + is $res->status, 302; + + is_deeply $res->finalize, [ 302, [ 'Location' => 'http://www.google.com/' ], [] ]; +} + +{ + my $res = Web::Response->new; + $res->redirect('http://www.google.com/', 301); + is_deeply $res->finalize, [ 301, [ 'Location' => 'http://www.google.com/' ], [] ]; +} + +{ + my $uri_invalid = "http://www.google.com/\r\nX-Injection: true\r\n\r\nHello World"; + + my $res = Web::Response->new; + $res->redirect($uri_invalid, 301); + my $psgi_res = $res->finalize; + ok $psgi_res->[1][1] !~ /\n/; +} + +done_testing; |