diff options
Diffstat (limited to 'test/http_SUITE_data/http_stream_body.erl')
-rw-r--r-- | test/http_SUITE_data/http_stream_body.erl | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/test/http_SUITE_data/http_stream_body.erl b/test/http_SUITE_data/http_stream_body.erl index aea5300..ef10266 100644 --- a/test/http_SUITE_data/http_stream_body.erl +++ b/test/http_SUITE_data/http_stream_body.erl @@ -7,16 +7,22 @@ init(Req, Opts) -> Body = proplists:get_value(body, Opts, "http_handler_stream_body"), Reply = proplists:get_value(reply, Opts), - SFun = fun(Socket, Transport) -> Transport:send(Socket, Body) end, + SFun = fun () -> + cowboy_req:send_body(Body, nofin, Req) + end, Req2 = case Reply of set_resp -> SLen = iolist_size(Body), - cowboy_req:set_resp_body_fun(SLen, SFun, Req); + cowboy_req:set_resp_body({stream, SLen, SFun}, Req); + %% @todo Hmm that one will be sent as chunked now. + %% We need an option to disable chunked. set_resp_close -> - cowboy_req:set_resp_body_fun(SFun, Req); + cowboy_req:set_resp_body({stream, undefined, SFun}, Req); set_resp_chunked -> %% Here Body should be a list of chunks, not a binary. - SFun2 = fun(SendFun) -> lists:foreach(SendFun, Body) end, - cowboy_req:set_resp_body_fun(chunked, SFun2, Req) + SFun2 = fun () -> + lists:foreach(fun (Data) -> cowboy_req:send_body(Data, nofin, Req) end, Body) + end, + cowboy_req:set_resp_body({stream, undefined, SFun2}, Req) end, {ok, cowboy_req:reply(200, Req2), Opts}. |