test: fix emqx_sahred_sub_SUITE:t_remote

prior to this fix, the peer ct node is actually node itself
This commit is contained in:
Zaiming (Stone) Shi 2023-09-18 21:54:43 +02:00
parent 99b60849b4
commit de93d71014
1 changed files with 17 additions and 8 deletions

View File

@ -1234,16 +1234,25 @@ setup_node(Node, Port) ->
ok
end,
%% Load env before doing anything
[ok = rpc:call(Node, application, load, [App]) || App <- [gen_rpc, emqx, ekka, mria]],
%% Needs to be set explicitly because ekka:start() (which calls `gen` is called without Handler
%% in emqx_common_test_helpers:start_apps(...)
ok = rpc:call(Node, application, set_env, [gen_rpc, tcp_server_port, Port - 1]),
ok = rpc:call(Node, application, set_env, [gen_rpc, port_discovery, manual]),
MyPort = Port - 1,
PeerPort = Port - 2,
ok = pair_gen_rpc(node(), MyPort, PeerPort),
ok = pair_gen_rpc(Node, PeerPort, MyPort),
%% Here we start the node and make it join the cluster
ok = rpc:call(Node, emqx_common_test_helpers, start_apps, [[], EnvHandler]),
rpc:call(Node, mria, join, [node()]),
%% warm it up, also assert the peer ndoe name
Node = emqx_rpc:call(Node, erlang, node, []),
rpc:call(Node, mria, join, [node()]),
ok.
pair_gen_rpc(Node, LocalPort, RemotePort) ->
_ = rpc:call(Node, application, load, [gen_rpc]),
ok = rpc:call(Node, application, set_env, [gen_rpc, port_discovery, manual]),
ok = rpc:call(Node, application, set_env, [gen_rpc, tcp_server_port, LocalPort]),
ok = rpc:call(Node, application, set_env, [gen_rpc, tcp_client_port, RemotePort]),
ok = rpc:call(Node, application, set_env, [gen_rpc, default_client_driver, tcp]),
_ = rpc:call(Node, application, stop, [gen_rpc]),
{ok, _} = rpc:call(Node, application, ensure_all_started, [gen_rpc]),
ok.