Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Add a test for HTTP handlers loop timeouts

  • Loading branch information...
commit dab6648290679dd2a655eaaeea4b75beca9ae151 1 parent 7ed93fc
Loïc Hoguin authored
Showing with 17 additions and 0 deletions.
  1. +2 −0  test/http_SUITE.erl
  2. +15 −0 test/http_handler_loop_timeout.erl
View
2  test/http_SUITE.erl
@@ -228,6 +228,7 @@ init_dispatch(Config) ->
{[<<"simple_post">>], rest_forbidden_resource, [false]},
{[<<"nodelete">>], rest_nodelete_resource, []},
{[<<"resetags">>], rest_resource_etags, []},
+ {[<<"loop_timeout">>], http_handler_loop_timeout, []},
{[], http_handler, []}
]}
].
@@ -352,6 +353,7 @@ check_status(Config) ->
{102, "/long_polling"},
{200, "/"},
{200, "/simple"},
+ {204, "/loop_timeout"},
{400, "/static/%2f"},
{400, "/static/%2e"},
{400, "/static/%2e%2e"},
View
15 test/http_handler_loop_timeout.erl
@@ -0,0 +1,15 @@
+%% Feel free to use, reuse and abuse the code in this file.
+
+-module(http_handler_loop_timeout).
+-export([init/3, info/3, terminate/2]).
+
+init({_, http}, Req, _) ->
+ erlang:send_after(1000, self(), error_timeout),
+ {loop, Req, undefined, 500, hibernate}.
+
+info(error_timeout, Req, State) ->
+ {ok, Req2} = cowboy_http_req:reply(500, Req),
+ {ok, Req2, State}.
+
+terminate(_, _) ->
+ ok.
Please sign in to comment.
Something went wrong with that request. Please try again.