test(proper): ensure epmd started

This commit is contained in:
JianBo He 2021-04-14 09:31:55 +08:00
parent 0e5fd67898
commit 4a388400a5
1 changed files with 15 additions and 1 deletions

View File

@ -88,7 +88,7 @@ prop_nodes_with_key() ->
%%--------------------------------------------------------------------
do_setup() ->
{ok, _} = net_kernel:start([?NODENAME]),
ensure_distributed_nodename(),
ok = logger:set_primary_config(#{level => warning}),
{ok, _Apps} = application:ensure_all_started(gen_rpc),
ok = application:set_env(gen_rpc, call_receive_timeout, 1),
@ -103,6 +103,20 @@ do_teardown(_) ->
ok = application:stop(gen_rpc),
ok = meck:unload(gen_rpc).
ensure_distributed_nodename() ->
case net_kernel:start([?NODENAME]) of
{ok, _} ->
ok;
{error, {already_started, _}} ->
net_kernel:stop(),
net_kernel:start([?NODENAME]);
{error, {{shutdown, {_, _, {'EXIT', nodistribution}}}, _}} ->
%% start epmd first
spawn_link(fun() -> os:cmd("epmd") end),
timer:sleep(100),
net_kernel:start([?NODENAME])
end.
%%--------------------------------------------------------------------
%% Generator
%%--------------------------------------------------------------------