mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 12:20:24 +00:00
Remove the set_env test from old_http_SUITE
It duplicated a test in misc_SUITE. Also fix a couple issues in misc_SUITE including a test that was not being executed.
This commit is contained in:
parent
36b32194b7
commit
753ba2e36d
2 changed files with 27 additions and 42 deletions
|
@ -18,25 +18,31 @@
|
|||
|
||||
-import(ct_helper, [config/2]).
|
||||
-import(ct_helper, [doc/1]).
|
||||
-import(ct_helper, [name/0]).
|
||||
-import(cowboy_test, [gun_open/1]).
|
||||
|
||||
all() ->
|
||||
[{group, no_env}|cowboy_test:common_all()].
|
||||
[{group, app}, {group, set_env}|cowboy_test:common_all()].
|
||||
|
||||
groups() ->
|
||||
Common = ct_helper:all(?MODULE) -- [restart_gracefully, set_env_missing],
|
||||
Common = ct_helper:all(?MODULE)
|
||||
-- [restart_gracefully, set_env, set_env_missing],
|
||||
[
|
||||
{app, [], [restart_gracefully]},
|
||||
{no_env, [], [set_env_missing]}
|
||||
{set_env, [parallel], [set_env, set_env_missing]}
|
||||
|cowboy_test:common_groups(Common)].
|
||||
|
||||
init_per_group(app, Config) ->
|
||||
cowboy_test:init_common_groups(http, Config, ?MODULE);
|
||||
init_per_group(Name=no_env, Config) ->
|
||||
cowboy_test:init_http(Name, #{}, Config);
|
||||
init_per_group(Name=app, Config) ->
|
||||
cowboy_test:init_http(Name, #{
|
||||
env => #{dispatch => init_dispatch(Config)}
|
||||
}, Config);
|
||||
init_per_group(set_env, Config) ->
|
||||
Config;
|
||||
init_per_group(Name, Config) ->
|
||||
cowboy_test:init_common_groups(Name, Config, ?MODULE).
|
||||
|
||||
end_per_group(set_env, _) ->
|
||||
ok;
|
||||
end_per_group(Name, _) ->
|
||||
cowboy:stop_listener(Name).
|
||||
|
||||
|
@ -72,26 +78,28 @@ router_invalid_path(Config) ->
|
|||
{response, _, 400, _} = gun:await(ConnPid, Ref),
|
||||
ok.
|
||||
|
||||
set_env(Config) ->
|
||||
set_env(Config0) ->
|
||||
doc("Live replace a middleware environment value."),
|
||||
Config = cowboy_test:init_http(name(), #{
|
||||
env => #{dispatch => []}
|
||||
}, Config0),
|
||||
ConnPid1 = gun_open(Config),
|
||||
Ref1 = gun:get(ConnPid1, "/"),
|
||||
{response, _, 200, _} = gun:await(ConnPid1, Ref1),
|
||||
Listener = proplists:get_value(name, config(tc_group_properties, Config)),
|
||||
cowboy:set_env(Listener, dispatch, []),
|
||||
{response, _, 400, _} = gun:await(ConnPid1, Ref1),
|
||||
cowboy:set_env(name(), dispatch, init_dispatch(Config)),
|
||||
%% Only new connections get the updated environment.
|
||||
ConnPid2 = gun_open(Config),
|
||||
Ref2 = gun:get(ConnPid2, "/"),
|
||||
{response, _, 400, _} = gun:await(ConnPid2, Ref2),
|
||||
{response, _, 200, _} = gun:await(ConnPid2, Ref2),
|
||||
ok.
|
||||
|
||||
set_env_missing(Config) ->
|
||||
set_env_missing(Config0) ->
|
||||
doc("Live replace a middleware environment value when env was not provided."),
|
||||
Config = cowboy_test:init_http(name(), #{}, Config0),
|
||||
ConnPid1 = gun_open(Config),
|
||||
Ref1 = gun:get(ConnPid1, "/"),
|
||||
{response, _, 500, _} = gun:await(ConnPid1, Ref1),
|
||||
Listener = proplists:get_value(name, config(tc_group_properties, Config)),
|
||||
cowboy:set_env(Listener, dispatch, []),
|
||||
cowboy:set_env(name(), dispatch, []),
|
||||
%% Only new connections get the updated environment.
|
||||
ConnPid2 = gun_open(Config),
|
||||
Ref2 = gun:get(ConnPid2, "/"),
|
||||
|
|
|
@ -33,22 +33,16 @@ all() ->
|
|||
{group, http},
|
||||
{group, https},
|
||||
{group, http_compress},
|
||||
{group, https_compress},
|
||||
{group, set_env}
|
||||
{group, https_compress}
|
||||
].
|
||||
|
||||
groups() ->
|
||||
Tests = ct_helper:all(?MODULE) -- [
|
||||
set_env_dispatch
|
||||
],
|
||||
Tests = ct_helper:all(?MODULE),
|
||||
[
|
||||
{http, [], Tests}, %% @todo parallel
|
||||
{https, [parallel], Tests},
|
||||
{http_compress, [parallel], Tests},
|
||||
{https_compress, [parallel], Tests},
|
||||
{set_env, [], [
|
||||
set_env_dispatch
|
||||
]}
|
||||
{https_compress, [parallel], Tests}
|
||||
].
|
||||
|
||||
init_per_group(Name = http, Config) ->
|
||||
|
@ -64,13 +58,7 @@ init_per_group(Name = https_compress, Config) ->
|
|||
cowboy_test:init_https(Name, #{
|
||||
env => #{dispatch => init_dispatch(Config)},
|
||||
compress => true
|
||||
}, Config);
|
||||
init_per_group(set_env, Config) ->
|
||||
{ok, _} = cowboy:start_clear(set_env, [{port, 0}], #{
|
||||
env => #{dispatch => []}
|
||||
}),
|
||||
Port = ranch:get_port(set_env),
|
||||
[{type, tcp}, {protocol, http}, {port, Port}, {opts, []}|Config].
|
||||
}, Config).
|
||||
|
||||
end_per_group(Name, _) ->
|
||||
ok = cowboy:stop_listener(Name).
|
||||
|
@ -519,17 +507,6 @@ rest_resource_etags_if_none_match(Config) ->
|
|||
{Ret, Type}
|
||||
end || {Status, ETag, Type} <- Tests].
|
||||
|
||||
set_env_dispatch(Config) ->
|
||||
ConnPid1 = gun_open(Config),
|
||||
Ref1 = gun:get(ConnPid1, "/"),
|
||||
{response, fin, 400, _} = gun:await(ConnPid1, Ref1),
|
||||
ok = cowboy:set_env(set_env, dispatch,
|
||||
cowboy_router:compile([{'_', [{"/", http_handler, []}]}])),
|
||||
ConnPid2 = gun_open(Config),
|
||||
Ref2 = gun:get(ConnPid2, "/"),
|
||||
{response, nofin, 200, _} = gun:await(ConnPid2, Ref2),
|
||||
ok.
|
||||
|
||||
set_resp_overwrite(Config) ->
|
||||
ConnPid = gun_open(Config),
|
||||
Ref = gun:get(ConnPid, "/set_resp/overwrite"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue