From b275579910d410e7f9ecff88cccdeb673191d332 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Wed, 18 Jul 2012 16:43:57 -0500 Subject: import the Plack::Response test suite --- t/response-redirect.t | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 t/response-redirect.t (limited to 't/response-redirect.t') 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; -- cgit v1.2.3-54-g00ecf