diff options
Diffstat (limited to 'test/http_SUITE.erl')
-rw-r--r-- | test/http_SUITE.erl | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/test/http_SUITE.erl b/test/http_SUITE.erl index 16d7e76..dbcfd2b 100644 --- a/test/http_SUITE.erl +++ b/test/http_SUITE.erl @@ -18,6 +18,7 @@ -import(ct_helper, [config/2]). -import(ct_helper, [doc/1]). +-import(ct_helper, [name/0]). -import(cowboy_test, [gun_open/1]). all() -> [{group, clear}]. @@ -26,10 +27,44 @@ groups() -> [{clear, [parallel], ct_helper:all(?MODULE)}]. init_routes(_) -> [ {"localhost", [ - {"/", hello_h, []} + {"/", hello_h, []}, + {"/echo/:key", echo_h, []} ]} ]. +idle_timeout_infinity(Config) -> + doc("Ensure the idle_timeout option accepts the infinity value."), + {ok, ListenerPid} = cowboy:start_clear(name(), [{port, 0}], #{ + env => #{dispatch => cowboy_router:compile(init_routes(Config))}, + request_timeout => infinity + }), + Port = ranch:get_port(name()), + Ref = erlang:monitor(process, ListenerPid), + ConnPid = gun_open([{type, tcp}, {protocol, http}, {port, Port}|Config]), + _ = gun:post(ConnPid, "/echo/read_body", [], <<"TEST">>), + receive + {'DOWN', Ref, process, ListenerPid, Reason} -> + error(Reason) + after 1000 -> + ok + end. + +request_timeout_infinity(Config) -> + doc("Ensure the request_timeout option accepts the infinity value."), + {ok, ListenerPid} = cowboy:start_clear(name(), [{port, 0}], #{ + env => #{dispatch => cowboy_router:compile(init_routes(Config))}, + idle_timeout => infinity + }), + Port = ranch:get_port(name()), + Ref = erlang:monitor(process, ListenerPid), + _ = gun_open([{type, tcp}, {protocol, http}, {port, Port}|Config]), + receive + {'DOWN', Ref, process, ListenerPid, Reason} -> + error(Reason) + after 1000 -> + ok + end. + switch_protocol_flush(Config) -> doc("Confirm that switch_protocol does not flush unrelated messages."), ProtoOpts = #{ |