aboutsummaryrefslogtreecommitdiffstats
path: root/test/rfc7231_SUITE.erl
diff options
context:
space:
mode:
Diffstat (limited to 'test/rfc7231_SUITE.erl')
-rw-r--r--test/rfc7231_SUITE.erl18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/rfc7231_SUITE.erl b/test/rfc7231_SUITE.erl
index 2bd5bb1..642429b 100644
--- a/test/rfc7231_SUITE.erl
+++ b/test/rfc7231_SUITE.erl
@@ -898,5 +898,23 @@ date_5xx(Config) ->
{_, _} = lists:keyfind(<<"date">>, 1, Headers),
ok.
+server_header(Config) ->
+ doc("An origin server may generate a server header field. "
+ "Cowboy generates a small one by default. (RFC7231 7.4.2)"),
+ ConnPid = gun_open(Config),
+ Ref = gun:get(ConnPid, "/"),
+ {response, _, 200, Headers} = gun:await(ConnPid, Ref),
+ {_, <<"Cowboy">>} = lists:keyfind(<<"server">>, 1, Headers),
+ ok.
+
+server_header_override(Config) ->
+ doc("An origin server may generate a server header field. "
+ "Cowboy allows the user to override the default. (RFC7231 7.4.2)"),
+ ConnPid = gun_open(Config),
+ Ref = gun:get(ConnPid, "/resp/set_resp_header_server"),
+ {response, _, 200, Headers} = gun:await(ConnPid, Ref),
+ {_, <<"nginx">>} = lists:keyfind(<<"server">>, 1, Headers),
+ ok.
+
%% @todo It's worth revisiting this RFC in the context of cowboy_rest
%% to ensure the state machine is doing what's expected by the RFC.