mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-07 19:22:14 +09:00
30 lines
1.2 KiB
Erlang
30 lines
1.2 KiB
Erlang
%% SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
-module(presence_broadcast_tests).
|
|
-typing([eqwalizer]).
|
|
|
|
-include_lib("eunit/include/eunit.hrl").
|
|
|
|
is_last_published_visible_test() ->
|
|
?assertEqual(false, presence_broadcast:is_last_published_visible(undefined)),
|
|
?assertEqual(true, presence_broadcast:is_last_published_visible(#{status => <<"online">>})),
|
|
?assertEqual(true, presence_broadcast:is_last_published_visible(#{status => <<"idle">>})),
|
|
?assertEqual(true, presence_broadcast:is_last_published_visible(#{status => <<"dnd">>})),
|
|
?assertEqual(
|
|
false, presence_broadcast:is_last_published_visible(#{status => <<"offline">>})
|
|
),
|
|
?assertEqual(
|
|
false, presence_broadcast:is_last_published_visible(#{status => <<"invisible">>})
|
|
).
|
|
|
|
cache_if_visible_skips_offline_test() ->
|
|
?assertEqual(ok, presence_broadcast:cache_if_visible(1, #{<<"status">> => <<"offline">>})),
|
|
?assertEqual(
|
|
ok, presence_broadcast:cache_if_visible(1, #{<<"status">> => <<"invisible">>})
|
|
),
|
|
?assertEqual(ok, presence_broadcast:cache_if_visible(<<"bad">>, #{})).
|
|
|
|
map_from_ids_test() ->
|
|
?assertEqual(#{1 => true, 2 => true}, presence_broadcast:map_from_ids([1, 2])),
|
|
?assertEqual(#{}, presence_broadcast:map_from_ids([])).
|