test: improve the test cases for t_if_contains_placeholder

This commit is contained in:
Shawn 2022-11-03 18:49:06 +08:00
parent 606ca670eb
commit 2c27f8c474
2 changed files with 21 additions and 14 deletions

View File

@ -277,7 +277,7 @@ create_resource(#{type := Type, config := Config0} = Params, Retry) ->
_ = try ?CLUSTER_CALL(init_resource_with_retrier, InitArgs, ok, _ = try ?CLUSTER_CALL(init_resource_with_retrier, InitArgs, ok,
init_resource, InitArgs) init_resource, InitArgs)
catch throw : Reason -> catch throw : Reason ->
?LOG(error, "create_resource failed: ~0p", [Reason]) ?LOG_SENSITIVE(warning, "create_resource failed: ~0p", [Reason])
end, end,
{ok, Resource}; {ok, Resource};
no_retry -> no_retry ->
@ -285,6 +285,7 @@ create_resource(#{type := Type, config := Config0} = Params, Retry) ->
_ = ?CLUSTER_CALL(init_resource, InitArgs), _ = ?CLUSTER_CALL(init_resource, InitArgs),
{ok, Resource} {ok, Resource}
catch throw : Reason -> catch throw : Reason ->
?LOG_SENSITIVE(error, "create_resource failed: ~0p", [Reason]),
{error, Reason} {error, Reason}
end end
end; end;

View File

@ -136,16 +136,22 @@ t_preproc_sql5(_) ->
emqx_rule_utils:proc_cql_param_str(ParamsTokens, Selected)). emqx_rule_utils:proc_cql_param_str(ParamsTokens, Selected)).
t_if_contains_placeholder(_) -> t_if_contains_placeholder(_) ->
?assert(emqx_rule_utils:if_contains_placeholder(<<"${a}">>)), TestTab =
?assert(emqx_rule_utils:if_contains_placeholder(<<"${a}${b}">>)), [ {true, "${a}"}
?assert(emqx_rule_utils:if_contains_placeholder(<<"${a},${b},${c}">>)), , {true, "${a}${b}"}
?assert(emqx_rule_utils:if_contains_placeholder(<<"a:${a}">>)), , {true, "${a},${b},${c}"}
?assert(emqx_rule_utils:if_contains_placeholder(<<"a:${a},b:${b}">>)), , {true, "a:${a}"}
?assert(emqx_rule_utils:if_contains_placeholder(<<"abc${ab}">>)), , {true, "a:${a},b:${b}"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"a">>)), , {true, "abc${ab}"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"abc$">>)), , {true, "a${ab${c}${e"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"abc${">>)), , {false, "a"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"abc${a">>)), , {false, "abc$"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"abc${ab">>)), , {false, "abc${"}
?assertNot(emqx_rule_utils:if_contains_placeholder(<<"a${ab${c${e">>)), , {false, "abc${a"}
ok. , {false, "abc${ab"}
, {false, "a${ab${c${e"}
],
lists:foreach(fun({Expected, InputStr}) ->
?assert(Expected =:= emqx_rule_utils:if_contains_placeholder(InputStr)),
?assert(Expected =:= emqx_rule_utils:if_contains_placeholder(iolist_to_binary(InputStr)))
end, TestTab).