From 28aee1f2720da122f83758b141c503f7bff18ffb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Thu, 3 Oct 2019 16:20:29 +0200 Subject: Document media type wildcard in content_types_accepted --- test/handlers/content_types_accepted_h.erl | 2 ++ test/rest_handler_SUITE.erl | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) (limited to 'test') diff --git a/test/handlers/content_types_accepted_h.erl b/test/handlers/content_types_accepted_h.erl index d34135e..df72f06 100644 --- a/test/handlers/content_types_accepted_h.erl +++ b/test/handlers/content_types_accepted_h.erl @@ -21,6 +21,8 @@ content_types_accepted(Req=#{qs := <<"multipart">>}, State) -> ], Req, State}; content_types_accepted(Req=#{qs := <<"param">>}, State) -> {[{{<<"text">>, <<"plain">>, [{<<"charset">>, <<"utf-8">>}]}, put_text_plain}], Req, State}; +content_types_accepted(Req=#{qs := <<"wildcard">>}, State) -> + {[{'*', put_text_plain}], Req, State}; content_types_accepted(Req=#{qs := <<"wildcard-param">>}, State) -> {[{{<<"text">>, <<"plain">>, '*'}, put_text_plain}], Req, State}. diff --git a/test/rest_handler_SUITE.erl b/test/rest_handler_SUITE.erl index cb734d9..43695c3 100644 --- a/test/rest_handler_SUITE.erl +++ b/test/rest_handler_SUITE.erl @@ -359,6 +359,24 @@ content_types_accepted_param(Config) -> {response, fin, 204, _} = gun:await(ConnPid, Ref), ok. +content_types_accepted_wildcard(Config) -> + doc("When a wildcard is returned from the content_types_accepted " + "callback, any content-type must be accepted."), + ConnPid = gun_open(Config), + Ref1 = gun:put(ConnPid, "/content_types_accepted?wildcard", [ + {<<"accept-encoding">>, <<"gzip">>}, + {<<"content-type">>, <<"text/plain">>} + ]), + gun:data(ConnPid, Ref1, fin, "Hello world!"), + {response, fin, 204, _} = gun:await(ConnPid, Ref1), + Ref2 = gun:put(ConnPid, "/content_types_accepted?wildcard", [ + {<<"accept-encoding">>, <<"gzip">>}, + {<<"content-type">>, <<"application/vnd.plain;charset=UTF-8">>} + ]), + gun:data(ConnPid, Ref2, fin, "Hello world!"), + {response, fin, 204, _} = gun:await(ConnPid, Ref2), + ok. + content_types_accepted_wildcard_param_no_content_type_param(Config) -> doc("When a wildcard is returned for parameters from the " "content_types_accepted callback, a content-type header " -- cgit v1.2.3