Merge pull request #7951 from zmstone/0514-fix-flaky-authn-test-case
0514 fix flaky authn test case
This commit is contained in:
commit
1c95c417f7
|
@ -71,9 +71,15 @@ pre_config_update(_, UpdateReq, OldConfig) ->
|
|||
end.
|
||||
|
||||
do_pre_config_update({create_authenticator, ChainName, Config}, OldConfig) ->
|
||||
NewId = authenticator_id(Config),
|
||||
case lists:filter(fun(OldConfig0) -> authenticator_id(OldConfig0) =:= NewId end, OldConfig) of
|
||||
[] ->
|
||||
CertsDir = certs_dir(ChainName, Config),
|
||||
NConfig = convert_certs(CertsDir, Config),
|
||||
{ok, OldConfig ++ [NConfig]};
|
||||
[_] ->
|
||||
{error, {already_exists, {authenticator, NewId}}}
|
||||
end;
|
||||
do_pre_config_update({delete_authenticator, _ChainName, AuthenticatorID}, OldConfig) ->
|
||||
NewConfig = lists:filter(
|
||||
fun(OldConfig0) ->
|
||||
|
@ -257,9 +263,12 @@ clear_certs(CertsDir, Config) ->
|
|||
ok = emqx_tls_lib:delete_ssl_files(CertsDir, undefined, OldSSL).
|
||||
|
||||
get_authenticator_config(AuthenticatorID, AuthenticatorsConfig) ->
|
||||
case [C0 || C0 <- AuthenticatorsConfig, AuthenticatorID == authenticator_id(C0)] of
|
||||
[C | _] -> C;
|
||||
[] -> {error, not_found}
|
||||
case
|
||||
lists:filter(fun(C) -> AuthenticatorID =:= authenticator_id(C) end, AuthenticatorsConfig)
|
||||
of
|
||||
[C] -> C;
|
||||
[] -> {error, not_found};
|
||||
_ -> error({duplicated_authenticator_id, AuthenticatorsConfig})
|
||||
end.
|
||||
|
||||
split_by_id(ID, AuthenticatorsConfig) ->
|
||||
|
@ -305,7 +314,7 @@ authenticator_id(#{mechanism := Mechanism}) ->
|
|||
authenticator_id(#{<<"mechanism">> := Mechanism, <<"backend">> := Backend}) ->
|
||||
<<Mechanism/binary, ":", Backend/binary>>;
|
||||
authenticator_id(#{<<"mechanism">> := Mechanism}) ->
|
||||
Mechanism;
|
||||
to_bin(Mechanism);
|
||||
authenticator_id(_C) ->
|
||||
throw({missing_parameter, #{name => mechanism}}).
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@ init_per_testcase(_, Config) ->
|
|||
Config.
|
||||
|
||||
init_per_suite(Config) ->
|
||||
emqx_config:erase(?EMQX_AUTHENTICATION_CONFIG_ROOT_NAME_BINARY),
|
||||
_ = application:load(emqx_conf),
|
||||
ok = emqx_common_test_helpers:start_apps(
|
||||
[emqx_authn, emqx_dashboard],
|
||||
|
|
|
@ -11,4 +11,7 @@ if [[ "${files_dirty}" == '' ]] && [[ "${files_cached}" == '' ]]; then
|
|||
fi
|
||||
files="$(echo -e "${files_dirty} \n ${files_cached}" | xargs)"
|
||||
# shellcheck disable=SC2086
|
||||
./scripts/erlfmt $OPT $files
|
||||
if ! (./scripts/erlfmt $OPT $files); then
|
||||
echo "EXECUTE 'make fmt' to fix" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue