From c9b86a83750a69498512bfcdcac449f9f2cdd1a1 Mon Sep 17 00:00:00 2001 From: Tobias Lindahl Date: Tue, 16 Nov 2021 13:32:38 +0100 Subject: [PATCH] test: make testcases not rely on timer:sleep --- apps/emqx/test/emqx_cm_SUITE.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/emqx/test/emqx_cm_SUITE.erl b/apps/emqx/test/emqx_cm_SUITE.erl index 8d017ec6e..20dc433f8 100644 --- a/apps/emqx/test/emqx_cm_SUITE.erl +++ b/apps/emqx/test/emqx_cm_SUITE.erl @@ -300,14 +300,16 @@ t_discard_session_race(_) -> t_takeover_session(_) -> #{conninfo := ConnInfo} = ?ChanInfo, none = emqx_cm:takeover_session(<<"clientid">>), + Parent = self(), erlang:spawn_link(fun() -> ok = emqx_cm:register_channel(<<"clientid">>, self(), ConnInfo), + Parent ! registered, receive {'$gen_call', From, {takeover, 'begin'}} -> gen_server:reply(From, test), ok end end), - timer:sleep(100), + receive registered -> ok end, {living, emqx_connection, _, test} = emqx_cm:takeover_session(<<"clientid">>), emqx_cm:unregister_channel(<<"clientid">>).