
use strict;
use warnings;

use Test::More tests => 5;
use HTTP::Request;

require 't/TestServer.pm';
my $s        = TestServer->new();
my $url_root = $s->started_ok("starting a test server");

use HTTP::Async;
my $q = HTTP::Async->new;

my %tests = (
    "$url_root/foo/bar?break_connection=before_headers" => 504,
    "$url_root/foo/bar?break_connection=before_content" => 200,
);

while ( my ( $url, $code ) = each %tests ) {
    my $req = HTTP::Request->new( 'GET', $url );
    ok $q->add($req), "Added request to the queue - $url";
    my $res = $q->wait_for_next_response;
    is $res->code, $code, "Got a '$code' response";
}
