test(delayed): add enable/disable test for delayed

This commit is contained in:
firest 2022-04-27 13:52:42 +08:00
parent fc391c7b9e
commit 3429eaabcd
1 changed files with 14 additions and 1 deletions

View File

@ -55,13 +55,26 @@ end_per_testcase(_Case, _Config) ->
%% Test cases
%%--------------------------------------------------------------------
t_load_case(_) ->
t_enable_disable_case(_) ->
emqx_delayed:disable(),
Hooks = emqx_hooks:lookup('message.publish'),
MFA = {emqx_delayed, on_message_publish, []},
?assertEqual(false, lists:keyfind(MFA, 2, Hooks)),
ok = emqx_delayed:enable(),
Hooks1 = emqx_hooks:lookup('message.publish'),
?assertNotEqual(false, lists:keyfind(MFA, 2, Hooks1)),
Ts0 = integer_to_binary(erlang:system_time(second) + 10),
DelayedMsg0 = emqx_message:make(
?MODULE, 1, <<"$delayed/", Ts0/binary, "/publish">>, <<"delayed_abs">>
),
_ = on_message_publish(DelayedMsg0),
?assertMatch(#{data := Datas} when Datas =/= [], emqx_delayed:list(#{})),
emqx_delayed:disable(),
?assertEqual(false, lists:keyfind(MFA, 2, Hooks)),
?assertMatch(#{data := []}, emqx_delayed:list(#{})),
ok.
t_delayed_message(_) ->