1use strict;
2use warnings;
3use Test::More;
4use Test::RequiresInternet ('jigsaw.w3.org' => 80);
5
6use HTTP::Request;
7use LWP::UserAgent;
8
9SKIP: {
10    skip 'LIVE_JIGSAW_TESTS not enabled', 3 if $ENV{NO_JIGSAW};
11
12    my $ua = LWP::UserAgent->new(keep_alive => 1);
13
14    my $content;
15    my @te = (
16        undef, q{}, 'deflate', 'gzip', 'trailers, deflate;q=0.4, identity;q=0.1',
17    );
18
19    for my $te (@te) {
20        my $req
21            = HTTP::Request->new(GET => 'http://jigsaw.w3.org/HTTP/TE/foo.txt');
22
23        if (defined $te) {
24            $req->header(TE         => $te);
25            $req->header(Connection => 'TE');
26        }
27
28        my $res = $ua->request($req);
29        isa_ok($res, 'HTTP::Response', 'request: Got a proper response');
30        if (defined $content) {
31            is($res->content, $content, 'content: Correct content');
32        }
33        else {
34            $content = $res->content;
35        }
36    }
37}
38
39done_testing();
40