aboutsummaryrefslogtreecommitdiffstats
path: root/test/req_SUITE.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-06-27 13:40:11 +0200
committerLoïc Hoguin <[email protected]>2018-06-27 13:40:11 +0200
commit0fb68ec07fa8096ecbc124896b56297fad818ae0 (patch)
tree27b61b3ae2fcff6da09450242a22f18cb3537c5b /test/req_SUITE.erl
parentfaefb634de2874cafaf7f2d7fb7d4f8eab9019a9 (diff)
downloadcowboy-0fb68ec07fa8096ecbc124896b56297fad818ae0.tar.gz
cowboy-0fb68ec07fa8096ecbc124896b56297fad818ae0.tar.bz2
cowboy-0fb68ec07fa8096ecbc124896b56297fad818ae0.zip
Add test cases for cowboy_req:stream_events
Diffstat (limited to 'test/req_SUITE.erl')
-rw-r--r--test/req_SUITE.erl49
1 files changed, 49 insertions, 0 deletions
diff --git a/test/req_SUITE.erl b/test/req_SUITE.erl
index 520bc48..9042f54 100644
--- a/test/req_SUITE.erl
+++ b/test/req_SUITE.erl
@@ -909,6 +909,55 @@ stream_body_content_length_nofin_error(Config) ->
%% @todo Crash when calling stream_body after calling reply.
%% @todo Crash when calling stream_body before calling stream_reply.
+stream_events_single(Config) ->
+ doc("Streamed event."),
+ {200, Headers, <<
+ "event: add_comment\n"
+ "data: Comment text.\n"
+ "data: With many lines.\n"
+ "\n"
+ >>} = do_get("/resp/stream_events/single", Config),
+ {_, <<"text/event-stream">>} = lists:keyfind(<<"content-type">>, 1, Headers),
+ ok.
+
+stream_events_list(Config) ->
+ doc("Streamed list of events."),
+ {200, Headers, <<
+ "event: add_comment\n"
+ "data: Comment text.\n"
+ "data: With many lines.\n"
+ "\n"
+ ": Set retry higher\n"
+ ": with many lines also.\n"
+ "retry: 10000\n"
+ "\n"
+ "id: 123\n"
+ "event: add_comment\n"
+ "data: Closing!\n"
+ "\n"
+ >>} = do_get("/resp/stream_events/list", Config),
+ {_, <<"text/event-stream">>} = lists:keyfind(<<"content-type">>, 1, Headers),
+ ok.
+
+stream_events_multiple(Config) ->
+ doc("Streamed events via multiple calls."),
+ {200, Headers, <<
+ "event: add_comment\n"
+ "data: Comment text.\n"
+ "data: With many lines.\n"
+ "\n"
+ ": Set retry higher\n"
+ ": with many lines also.\n"
+ "retry: 10000\n"
+ "\n"
+ "id: 123\n"
+ "event: add_comment\n"
+ "data: Closing!\n"
+ "\n"
+ >>} = do_get("/resp/stream_events/multiple", Config),
+ {_, <<"text/event-stream">>} = lists:keyfind(<<"content-type">>, 1, Headers),
+ ok.
+
stream_trailers(Config) ->
doc("Stream body followed by trailer headers."),
{200, RespHeaders, <<"Hello world!">>, [