diff options
Diffstat (limited to 'web/server/h2o/libh2o/misc/p5-net-fastcgi/t/020_protocol/060_params.t')
-rw-r--r-- | web/server/h2o/libh2o/misc/p5-net-fastcgi/t/020_protocol/060_params.t | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/web/server/h2o/libh2o/misc/p5-net-fastcgi/t/020_protocol/060_params.t b/web/server/h2o/libh2o/misc/p5-net-fastcgi/t/020_protocol/060_params.t deleted file mode 100644 index 92d9a64c7..000000000 --- a/web/server/h2o/libh2o/misc/p5-net-fastcgi/t/020_protocol/060_params.t +++ /dev/null @@ -1,79 +0,0 @@ -#!perl - -use strict; -use warnings; - -use lib 't/lib', 'lib'; -use myconfig; - -use Test::More tests => 38; -use Test::HexString; -use Test::Exception; - -BEGIN { - use_ok('Net::FastCGI::Protocol', qw[ build_params - check_params - parse_params ]); -} - -sub TRUE () { !!1 } -sub FALSE () { !!0 } - -my @tests = ( - # octets params - [ "", { } ], - [ "\x00\x00", { '' => '' }, ], - [ "\x01\x01\x31\x31", { 1 => 1 }, ], - [ "\x01\x01\x41\x42\x01\x01\x43\x44\x01\x01\x45\x46", { A => 'B', C => 'D', E => 'F' } ], -); - -foreach my $test (@tests) { - my ($expected, $params) = @$test; - my $got = join '', map { - build_params({ $_ => $params->{$_} }) - } sort keys %$params; - is_hexstr($got, $expected, 'build_params()'); -} - -is_hexstr("\x03\x00foo", build_params({foo => undef}), 'build_params({foo => undef})'); -is_hexstr("\x7F\x00" . "x" x 127, build_params({ "x" x 127 => '' })); -is_hexstr("\x00\x7F" . "x" x 127, build_params({ '' => "x" x 127 })); -is_hexstr("\x80\x00\x00\x80\x00" . "x" x 128, build_params({ "x" x 128 => '' })); -is_hexstr("\x00\x80\x00\x00\x80" . "x" x 128, build_params({ '' => "x" x 128 })); - -foreach my $test (@tests) { - my $expected = $test->[1]; - my $got = parse_params($test->[0]); - is_deeply($got, $expected, 'parse_params()'); -} - -foreach my $test (@tests) { - my $octets = $test->[0]; - is(check_params($octets), TRUE, 'check_params(octets) eq TRUE'); -} - -my @insufficient = ( - "\x00", - "\x01", - "\x00\x01", - "\x01\x00", - "\x00\xFF", - "\x01\xFF\x00", - "\x00\x80\x00\x00\x80", - "\x80\x00\x00\x80\x00", -); - -foreach my $test (@insufficient) { - throws_ok { parse_params($test) } qr/^FastCGI: Insufficient .* FCGI_NameValuePair/; -} - -foreach my $test (@insufficient) { - is(check_params($test), FALSE, 'check_params(octets) eq FALSE'); -} - -is(check_params(undef), FALSE, 'check_params(undef) eq FALSE'); - -throws_ok { check_params() } qr/^Usage: /; -throws_ok { build_params() } qr/^Usage: /; -throws_ok { parse_params() } qr/^Usage: /; - |