aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/spdy_SUITE.erl12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/spdy_SUITE.erl b/test/spdy_SUITE.erl
index b5a5666..b19146f 100644
--- a/test/spdy_SUITE.erl
+++ b/test/spdy_SUITE.erl
@@ -301,3 +301,15 @@ dont_send_rst_stream_on_rst_stream(_) ->
%% No RST_STREAM was received; only SYN_STREAM.
[_] = spdy_server:stop(ServerPid),
not_down().
+
+coalesce_multiple_identical_rst_stream(_) ->
+ doc("Do not send multiple identical RST_STREAM in succession. (spdy-protocol-draft3-1 2.4.2)"),
+ {ok, ServerPid, Port} = spdy_server:start_link(),
+ {ok, ConnPid} = gun:open("localhost", Port, #{transport=>ssl}),
+ {ok, spdy} = gun:await_up(ConnPid),
+ spdy_server:send(ServerPid, [
+ {data, 1, true, <<"Hello ">>},
+ {data, 1, true, <<"world!">>}
+ ]),
+ wait(),
+ [{rst_stream, 1, invalid_stream}] = spdy_server:stop(ServerPid).