From e9fd2925ae6be7b6f456e86254b1437d06dfa973 Mon Sep 17 00:00:00 2001 From: Bing Han Date: Thu, 5 Jul 2018 00:32:07 +0800 Subject: Fix cancelling undefined settings timer when settings_timeout is infinity --- test/http2_SUITE.erl | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'test/http2_SUITE.erl') diff --git a/test/http2_SUITE.erl b/test/http2_SUITE.erl index e3dd4b2..b71b2c9 100644 --- a/test/http2_SUITE.erl +++ b/test/http2_SUITE.erl @@ -159,3 +159,20 @@ resp_iolist_body(Config) -> {ok, RespBody} = gun:await_body(ConnPid, Ref), Len = iolist_size(RespBody), gun:close(ConnPid). + +settings_timeout_infinity(Config) -> + doc("Ensure infinity for settings_timeout is accepted."), + ProtoOpts = #{ + env => #{dispatch => cowboy_router:compile(init_routes(Config))}, + settings_timeout => infinity + }, + {ok, Pid} = cowboy:start_clear(name(), [{port, 0}], ProtoOpts), + Ref = erlang:monitor(process, Pid), + Port = ranch:get_port(name()), + {ok, _} = do_handshake([{port, Port}|Config]), + receive + {'DOWN', Ref, process, Pid, Reason} -> + error(Reason) + after 1000 -> + cowboy:stop_listener(name()) + end. -- cgit v1.2.3