anchor.diff:      ?assertEqual({200, "OK"}, status(SecondResponse)),
       ?assertEqual(<<?DEFAULT_STRING>>, body(SecondResponse)).
   
  +chunked_encoding() ->
  +    Port = start(gen_tcp, [fun chunked_response/5, fun chunked_response_t/5]),
  +    URL = url(Port, "/chunked"),
  +    {ok, FirstResponse} = lhttpc:request(URL, get, [], 50),
  +    ?assertEqual({200, "OK"}, status(FirstResponse)),
  +    ?assertEqual(<<?DEFAULT_STRING>>, body(FirstResponse)),
  +    ?assertEqual("chunked", lhttpc_lib:header_value("transfer-encoding",
  +            headers(FirstResponse))),
  +    {ok, SecondResponse} = lhttpc:request(URL, get, [], 50),
  +    ?assertEqual({200, "OK"}, status(SecondResponse)),
  +    ?assertEqual(<<"Again, great success!">>, body(SecondResponse)),
  +    ?assertEqual("chunked", lhttpc_lib:header_value("transfer-encoding",
  +            headers(SecondResponse))),
  +    ?assertEqual("1", lhttpc_lib:header_value("Trailer-1",
  +            headers(SecondResponse))),
  +    ?assertEqual("2", lhttpc_lib:header_value("Trailer-2",
  +            headers(SecondResponse))).
  +
  +close_connection() ->
  +    Port = start(gen_tcp, [fun close_connection/5]),
  +    URL = url(Port, "/close"),
  +    ?assertEqual({error, connection_closed}, lhttpc:request(URL, "GET", [],
  +            1000)).
  +
   ssl_get() ->
       Port = start(ssl, [fun simple_response/5]),
  -    URL = "https://localhost:" ++ integer_to_list(Port) ++ "/simple",
  +    URL = ssl_url(Port, "/simple"),
       {ok, Response} = lhttpc:request(URL, "GET", [], 1000),
       ?assertEqual({200, "OK"}, status(Response)),
       ?assertEqual(<<?DEFAULT_STRING>>, body(Response)).
   
   ssl_post() ->
       Port = start(ssl, [fun copy_body/5]),
  -    URL = "https://localhost:" ++ integer_to_list(Port) ++ "/simple",
  +    URL = ssl_url(Port, "/simple"),
       Body = "SSL Test <o/",
       BinaryBody = list_to_binary(Body),
       {ok, Response} = lhttpc:request(URL, "POST", [], Body, 1000),
  
positive.code: 
  no_content_length_get() ->
      Port = start(gen_tcp, [fun no_content_length/5]),
      URL = "http://localhost:" ++ integer_to_list(Port) ++ "/no_cl",
      {ok, Response} = lhttpc:request(URL, "GET", [], 1000),
      ?assertEqual({200, "OK"}, status(Response)),
      ?assertEqual(<<?DEFAULT_STRING>>, body(Response)).
  
  connection_close() ->
      Port = start(gen_tcp, [fun respond_and_close/5]),
      URL = "http://localhost:" ++ integer_to_list(Port) ++ "/close",
      Body = pid_to_list(self()),
      {ok, Response} = lhttpc:request(URL, "PUT", [], Body, 1000),
      ?assertEqual({200, "OK"}, status(Response)),
  
negative.code:             fun simple_response/5,
              fun copy_body/5
          ]),
      URL = url(Port, "/persistent"),
      {ok, FirstResponse} = lhttpc:request(URL, "GET", [], 1000),
      Headers = [{"KeepAlive", "300"}], % shouldn't be needed
      {ok, SecondResponse} = lhttpc:request(URL, "GET", Headers, 1000),
  