test(persistent_sessions): test websocket connection

This commit is contained in:
Tobias Lindahl 2021-10-22 00:46:22 +02:00
parent 9188f5b67e
commit 10de564abf
1 changed files with 15 additions and 6 deletions

View File

@ -57,13 +57,15 @@ groups() ->
]} ]}
, {persistent_store_disabled, [ {group, no_kill_connection_process} , {persistent_store_disabled, [ {group, no_kill_connection_process}
]} ]}
, {no_kill_connection_process, [], [{group, tcp}, {group, quic}]} , {no_kill_connection_process, [], [{group, tcp}, {group, quic}, {group, ws}]}
, { kill_connection_process, [], [{group, tcp}, {group, quic}]} , { kill_connection_process, [], [{group, tcp}, {group, quic}, {group, ws}]}
, {snabbkaffe, [], [{group, tcp_snabbkaffe}, {group, quic_snabbkaffe}]} , {snabbkaffe, [], [{group, tcp_snabbkaffe}, {group, quic_snabbkaffe}, {group, ws_snabbkaffe}]}
, {tcp, [], OtherTCs} , {tcp, [], OtherTCs}
, {quic, [], OtherTCs} , {quic, [], OtherTCs}
, {ws, [], OtherTCs}
, {tcp_snabbkaffe, [], SnabbkaffeTCs} , {tcp_snabbkaffe, [], SnabbkaffeTCs}
, {quic_snabbkaffe, [], SnabbkaffeTCs} , {quic_snabbkaffe, [], SnabbkaffeTCs}
, {ws_snabbkaffe, [], SnabbkaffeTCs}
, {gc_tests, [], GCTests} , {gc_tests, [], GCTests}
]. ].
@ -93,6 +95,12 @@ init_per_group(persistent_store_disabled, Config) ->
emqx_common_test_helpers:start_apps([], fun set_special_confs/1), emqx_common_test_helpers:start_apps([], fun set_special_confs/1),
?assertEqual(false, emqx_persistent_session:is_store_enabled()), ?assertEqual(false, emqx_persistent_session:is_store_enabled()),
[{persistent_store_enabled, false}|Config]; [{persistent_store_enabled, false}|Config];
init_per_group(Group, Config) when Group == ws; ws_snabbkaffe ->
[{ssl,false},
{host,"localhost"},
{enable_websocket,true},
{port, 8083},
{conn_fun, ws_connect}| Config];
init_per_group(Group, Config) when Group == tcp; Group == tcp_snabbkaffe -> init_per_group(Group, Config) when Group == tcp; Group == tcp_snabbkaffe ->
[ {port, 1883}, {conn_fun, connect}| Config]; [ {port, 1883}, {conn_fun, connect}| Config];
init_per_group(Group, Config) when Group == quic; Group == quic_snabbkaffe -> init_per_group(Group, Config) when Group == quic; Group == quic_snabbkaffe ->
@ -252,10 +260,11 @@ do_publish(Payloads = [_|_], PublishFun, Config) ->
{Pid, Ref} = {Pid, Ref} =
spawn_monitor( spawn_monitor(
fun() -> fun() ->
ConnFun = ?config(conn_fun, Config), %% For convenience, always publish using tcp.
%% The publish path is not what we are testing.
{ok, Client} = emqtt:start_link([ {proto_ver, v5} {ok, Client} = emqtt:start_link([ {proto_ver, v5}
| Config]), , {port, 1883} ]),
{ok, _} = emqtt:ConnFun(Client), {ok, _} = emqtt:connect(Client),
lists:foreach(fun(Payload) -> PublishFun(Client, Payload) end, Payloads), lists:foreach(fun(Payload) -> PublishFun(Client, Payload) end, Payloads),
ok = emqtt:disconnect(Client) ok = emqtt:disconnect(Client)
end), end),