Mercurial > hg > nginx-tests
changeset 344:b6d566531746
Tests: tests for range filter bound with "max_ranges".
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Mon, 30 Sep 2013 19:07:41 +0400 |
parents | e7dc8f4d0a4b |
children | 8e8636a4fe61 |
files | range.t |
diffstat | 1 files changed, 22 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/range.t +++ b/range.t @@ -21,7 +21,7 @@ use Test::Nginx; select STDERR; $| = 1; select STDOUT; $| = 1; -my $t = Test::Nginx->new()->has(qw/http charset/)->plan(31); +my $t = Test::Nginx->new()->has(qw/http charset/)->plan(35); $t->write_file_expand('nginx.conf', <<'EOF'); @@ -47,6 +47,14 @@ http { charset A; source_charset B; } + + location /t3.html { + max_ranges 2; + } + + location /t4.html { + max_ranges 0; + } } } @@ -56,6 +64,10 @@ EOF join('', map { sprintf "X%03dXXXXXX", $_ } (0 .. 99))); $t->write_file('t2.html', join('', map { sprintf "X%03dXXXXXX", $_ } (0 .. 99))); +$t->write_file('t3.html', + join('', map { sprintf "X%03dXXXXXX", $_ } (0 .. 99))); +$t->write_file('t4.html', + join('', map { sprintf "X%03dXXXXXX", $_ } (0 .. 99))); $t->run(); ############################################################################### @@ -114,6 +126,15 @@ like($t1, qr/X001XXXXXX\x0d?$/m, 'multip like(http_get_range('/t1.html', 'Range: bytes=100000-'), qr/416/, 'not satisfiable'); +like(http_get_range('/t3.html', 'Range: bytes=0-9, -10'), qr/206/, + 'max_ranges not reached'); +like(http_get_range('/t3.html', 'Range: bytes=0-9, -10, 10000-'), qr/206/, + 'max_ranges not reached bad range'); +unlike(http_get_range('/t3.html', 'Range: bytes=0-9, -10, 10-19'), + qr/206/, 'max_ranges reached'); +unlike(http_get_range('/t4.html', 'Range: bytes=0-9'), qr/206/, + 'max_ranges zero'); + ############################################################################### sub http_get_range {