diff options
author | Stefan Bühler <stbuehler@web.de> | 2012-11-21 12:01:42 +0000 |
---|---|---|
committer | Stefan Bühler <stbuehler@web.de> | 2012-11-21 12:01:42 +0000 |
commit | 6200764f05dbcb67a89c3c056f9e66cda25252cf (patch) | |
tree | bc8d93208b265934197b83585976f78c3b62f925 /tests/request.t | |
parent | 29b126d5d375284015aedcdaffbd42d9a077f002 (diff) | |
download | lighttpd-git-6200764f05dbcb67a89c3c056f9e66cda25252cf.tar.gz |
tests: check different combination of empty values, leading/trailing spaces and commas in the Connection header
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2859 152afb58-edef-0310-8abb-c4023f1b3aa9
Diffstat (limited to 'tests/request.t')
-rwxr-xr-x | tests/request.t | 58 |
1 files changed, 57 insertions, 1 deletions
diff --git a/tests/request.t b/tests/request.t index c4bd9581..93589751 100755 --- a/tests/request.t +++ b/tests/request.t @@ -8,7 +8,7 @@ BEGIN { use strict; use IO::Socket; -use Test::More tests => 46; +use Test::More tests => 52; use LightyTest; my $tf = LightyTest->new(); @@ -429,5 +429,61 @@ EOF $t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 403 } ]; ok($tf->handle_http($t) == 0, 'static file with forbidden pathinfo'); + +print "\nConnection header\n"; +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection : close +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, spaces before ":"'); + +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection: ,close +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, leading comma'); + +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection: close,,TE +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, no value between two commas'); + +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection: close, ,TE +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, space between two commas'); + +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection: close, +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, comma after value'); + +$t->{REQUEST} = ( <<EOF +GET /12345.txt HTTP/1.1 +Connection: close, +Host: 123.example.org +EOF + ); +$t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.1', 'HTTP-Status' => 200, 'HTTP-Content' => '12345'."\n", 'Content-Type' => 'text/plain', 'Connection' => 'close' } ]; +ok($tf->handle_http($t) == 0, 'Connection-header, comma and space after value'); + ok($tf->stop_proc == 0, "Stopping lighttpd"); |