HTTP-Parser2-XS
view release on metacpan or search on metacpan
t/04-response-rv.t view on Meta::CPAN
use strict;
use warnings;
use Test::More tests => 5;
BEGIN {
use_ok('HTTP::Parser2::XS')
};
{
my $buf = "HTTP/1.0 200 OK\x0d\x0a".
"Connection: keep-alive\x0d\x0a".
"\x0d\x0a";
my $r = {};
my $rv = parse_http_response($buf, $r);
ok $rv > 0, "rv > 0, complete response";
};
{
my $buf = "HTTP/1.0 200 OK\x0d\x0a".
"Host: local";
my $r = {};
my $rv = parse_http_response($buf, $r);
ok $rv == -2, "rv == -2, incomplete response" or diag "rv = $rv";
};
{
my $buf = "BOOMBOOMZCZXXZXCCZX\x0d\x0a".
"\x0d\x0a";
my $r = {};
my $rv = parse_http_response($buf, $r);
ok $rv == -1, "rv == -1, bad response" or diag "rv = $rv";
};
{
my $buf = "HTTP/1.0 200 OK\x0d\x0a".
"Connection".("x" x 1024).": keep-alive\x0d\x0a".
"\x0d\x0a";
my $r = {};
my $rv = parse_http_response($buf, $r);
ok $rv == -1, "rv == -1, too long header" or diag "rv = $rv";
};
( run in 1.581 second using v1.01-cache-2.11-cpan-71847e10f99 )