From b3bfcf068c20573ae06df42530f1a6d4dc6842c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 31 Oct 2018 22:41:59 +0100 Subject: Add a cowboy_rest test for malformed if-*-match headers --- test/rest_handler_SUITE.erl | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'test/rest_handler_SUITE.erl') diff --git a/test/rest_handler_SUITE.erl b/test/rest_handler_SUITE.erl index 1d9619c..a9884b5 100644 --- a/test/rest_handler_SUITE.erl +++ b/test/rest_handler_SUITE.erl @@ -38,6 +38,7 @@ end_per_group(Name, _) -> init_dispatch(_) -> cowboy_router:compile([{'_', [ + {"/", rest_hello_h, []}, {"/provide_callback_missing", provide_callback_missing_h, []}, {"/switch_handler", switch_handler_h, run}, {"/switch_handler_opts", switch_handler_h, hibernate} @@ -53,6 +54,26 @@ do_decode(Headers, Body) -> %% Tests. +error_on_malformed_if_match(Config) -> + doc("A malformed If-Match header must result in a 400 response."), + ConnPid = gun_open(Config), + Ref = gun:get(ConnPid, "/", [ + {<<"accept-encoding">>, <<"gzip">>}, + {<<"if-match">>, <<"bad">>} + ]), + {response, _, 400, _} = gun:await(ConnPid, Ref), + ok. + +error_on_malformed_if_none_match(Config) -> + doc("A malformed If-None-Match header must result in a 400 response."), + ConnPid = gun_open(Config), + Ref = gun:get(ConnPid, "/", [ + {<<"accept-encoding">>, <<"gzip">>}, + {<<"if-none-match">>, <<"bad">>} + ]), + {response, _, 400, _} = gun:await(ConnPid, Ref), + ok. + provide_callback_missing(Config) -> doc("A 500 response must be sent when the ProvideCallback can't be called."), ConnPid = gun_open(Config), -- cgit v1.2.3