diff options
author | Loïc Hoguin <[email protected]> | 2018-06-04 14:33:24 +0200 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2018-06-04 14:33:24 +0200 |
commit | 1a6407d8a85100fd11e720b94bf5b0b1e089b884 (patch) | |
tree | 85fe1713c8009325eace428727faaaae4dcf34d3 /test/rfc7230_SUITE.erl | |
parent | 714b11639e9719e42ba0beafb6e6185b0d02e68a (diff) | |
download | cowboy-1a6407d8a85100fd11e720b94bf5b0b1e089b884.tar.gz cowboy-1a6407d8a85100fd11e720b94bf5b0b1e089b884.tar.bz2 cowboy-1a6407d8a85100fd11e720b94bf5b0b1e089b884.zip |
Add a test for an empty host header in rfc7230
Diffstat (limited to 'test/rfc7230_SUITE.erl')
-rw-r--r-- | test/rfc7230_SUITE.erl | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/test/rfc7230_SUITE.erl b/test/rfc7230_SUITE.erl index 2c4319f..3e06d6c 100644 --- a/test/rfc7230_SUITE.erl +++ b/test/rfc7230_SUITE.erl @@ -17,6 +17,7 @@ -compile(nowarn_export_all). -import(ct_helper, [doc/1]). +-import(ct_helper, [name/0]). -import(cowboy_test, [gun_open/1]). -import(cowboy_test, [gun_down/1]). -import(cowboy_test, [raw_open/1]). @@ -1587,8 +1588,21 @@ reject_absolute_form_different_host(Config) -> %identical to the host header. Invalid requests must be rejected %with a 400 status code and the closing of the connection. -%empty_host(Config) -> -%The host header is empty when the authority component is undefined. (RFC7230 5.4) +empty_host(Config0) -> + doc("The host header is empty when the authority component is undefined. (RFC7230 5.4)"), + Routes = [{'_', [{"/echo/:key[/:arg]", echo_h, []}]}], + Config = cowboy_test:init_http(name(), #{ + env => #{dispatch => cowboy_router:compile(Routes)} + }, Config0), + #{code := 200, body := <<>>} = do_raw(Config, [ + "GET /echo/host HTTP/1.1\r\n" + "Host:\r\n" + "\r\n"]), + #{code := 200, body := <<>>} = do_raw(Config, [ + "GET /echo/host HTTP/1.1\r\n" + "Host: \r\n" + "\r\n"]), + cowboy:stop_listener(name()). %% The effective request URI can be rebuilt by concatenating scheme, %% "://", authority, path and query components. (RFC7230 5.5) |