anchor.diff:                  ?_test(bad_url()),
                   ?_test(persistent_connection()),
                   ?_test(request_timeout()),
  -                ?_test(connection_timeout()),
  -                ?_test(suspended_manager()),
  +                %% ?_test(connection_timeout()),
  +                %% ?_test(suspended_manager()),
                   ?_test(chunked_encoding()),
                   ?_test(partial_upload_identity()),
                   ?_test(partial_upload_identity_iolist()),
  
positive.code:     URL = url(Port, "/slow"),
      ?assertEqual({error, timeout}, lhttpc:request(URL, get, [], 50)).
  
  connection_timeout() ->
      Port = start(gen_tcp, [fun simple_response/5, fun simple_response/5]),
      URL = url(Port, "/close_conn"),
      lhttpc_manager:update_connection_timeout(50), % very short keep alive
      {ok, Response} = lhttpc:request(URL, get, [], 100),
      ?assertEqual({200, "OK"}, status(Response)),
      ?assertEqual(<<?DEFAULT_STRING>>, body(Response)),
      timer:sleep(100),
      ?assertEqual(0,
          lhttpc_manager:connection_count({"localhost", Port, false})),
      lhttpc_manager:update_connection_timeout(300000). % set back
  
  suspended_manager() ->
      Port = start(gen_tcp, [fun simple_response/5, fun simple_response/5]),
      URL = url(Port, "/persistent"),
      {ok, FirstResponse} = lhttpc:request(URL, get, [], 50),
      ?assertEqual({200, "OK"}, status(FirstResponse)),
      ?assertEqual(<<?DEFAULT_STRING>>, body(FirstResponse)),
      Pid = whereis(lhttpc_manager),
      true = erlang:suspend_process(Pid),
      ?assertEqual({error, timeout}, lhttpc:request(URL, get, [], 50)),
      true = erlang:resume_process(Pid),
      ?assertEqual(1,
          lhttpc_manager:connection_count({"localhost", Port, false})),
      {ok, SecondResponse} = lhttpc:request(URL, get, [], 50),
      ?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]),
  
negative.code:         {setup, fun start_app/0, fun stop_app/1, [
                  ?_test(ssl_get()),
                  ?_test(ssl_post()),
                  ?_test(ssl_chunked())
                  %% ?_test(connection_count()) % just check that it's 0 (last)
              ]}
      }.
  
  