mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 20:30:23 +00:00
Add rfc7230 test suite and update others to recent Gun
This is a large commit. The rfc7230 test suite adds many tests from the RFC7230 document. Gun has been updated quite a bit recently, which broke the Cowboy suites. This is now fixed with this commit. A new hook onfirstrequest has been added. It was very useful during debugging of the test suites. The initial process code has changed a little; more changes are expected with the switch to maps for options.
This commit is contained in:
parent
90ae31998e
commit
228cebaf04
21 changed files with 2137 additions and 440 deletions
16
test/handlers/asterisk_h.erl
Normal file
16
test/handlers/asterisk_h.erl
Normal file
|
@ -0,0 +1,16 @@
|
|||
%% This module echoes back the value the test is interested in.
|
||||
|
||||
-module(asterisk_h).
|
||||
|
||||
-export([init/2]).
|
||||
|
||||
init(Req, Opts) ->
|
||||
echo(cowboy_req:header(<<"x-echo">>, Req), Req, Opts).
|
||||
|
||||
echo(What, Req, Opts) ->
|
||||
F = binary_to_atom(What, latin1),
|
||||
Value = case cowboy_req:F(Req) of
|
||||
V when is_integer(V) -> integer_to_binary(V);
|
||||
V -> V
|
||||
end,
|
||||
{ok, cowboy_req:reply(200, [], Value, Req), Opts}.
|
16
test/handlers/echo_h.erl
Normal file
16
test/handlers/echo_h.erl
Normal file
|
@ -0,0 +1,16 @@
|
|||
%% This module echoes back the value the test is interested in.
|
||||
|
||||
-module(echo_h).
|
||||
|
||||
-export([init/2]).
|
||||
|
||||
init(Req, Opts) ->
|
||||
echo(cowboy_req:binding(key, Req), Req, Opts).
|
||||
|
||||
echo(What, Req, Opts) ->
|
||||
F = binary_to_atom(What, latin1),
|
||||
Value = case cowboy_req:F(Req) of
|
||||
V when is_integer(V) -> integer_to_binary(V);
|
||||
V -> V
|
||||
end,
|
||||
{ok, cowboy_req:reply(200, [], Value, Req), Opts}.
|
8
test/handlers/hello_h.erl
Normal file
8
test/handlers/hello_h.erl
Normal file
|
@ -0,0 +1,8 @@
|
|||
%% This module sends a hello world response.
|
||||
|
||||
-module(hello_h).
|
||||
|
||||
-export([init/2]).
|
||||
|
||||
init(Req, Opts) ->
|
||||
{ok, cowboy_req:reply(200, [], <<"Hello world!">>, Req), Opts}.
|
|
@ -6,5 +6,5 @@
|
|||
-export([init/2]).
|
||||
|
||||
init(Req, content_length) ->
|
||||
cowboy_error_h:ignore(erlang, binary_to_integer, 1),
|
||||
ct_helper_error_h:ignore(erlang, binary_to_integer, 1),
|
||||
cowboy_req:parse_header(<<"content-length">>, Req).
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue