feat: create default personal calendar on email verification. Refs EventHub/EventHubBack#49

This commit is contained in:
2026-07-20 11:17:31 +03:00
parent 2440c50330
commit 7c1fe1940d
4 changed files with 80 additions and 6 deletions
+18 -2
View File
@@ -47,11 +47,27 @@ test() ->
#{<<"token">> := AuthToken} = jsx:decode(list_to_binary(LoginBody), [return_maps]),
?assert(is_binary(AuthToken)),
% 6. Повторное использование того же токена – ошибка 404
% 6. После активации — дефолтный приватный personal-календарь
Calendars = api_test_runner:client_get(<<"/v1/calendars">>, AuthToken),
?assertEqual(1, length(Calendars)),
[DefaultCal] = Calendars,
?assertEqual(<<"personal">>, maps:get(<<"type">>, DefaultCal)),
?assertEqual(<<>>, maps:get(<<"short_name">>, DefaultCal)),
ExpectedTitle = case string:split(Email, <<"@">>) of
[Local, _] when byte_size(Local) > 0 -> Local;
_ -> <<"Мой календарь">>
end,
?assertEqual(ExpectedTitle, maps:get(<<"title">>, DefaultCal)),
% 7. Повторное использование того же токена – ошибка 404
{ok, 404, _, _} = api_test_runner:client_request(post, <<"/v1/verify">>, <<>>,
jsx:encode(#{<<"token">> => Token})),
% 7. Невалидный токен – ошибка 404
% 7. Повторное использование того же токена ошибка 404
{ok, 404, _, _} = api_test_runner:client_request(post, <<"/v1/verify">>, <<>>,
jsx:encode(#{<<"token">> => Token})),
% 8. Невалидный токен – ошибка 404
{ok, 404, _, _} = api_test_runner:client_request(post, <<"/v1/verify">>, <<>>,
jsx:encode(#{<<"token">> => <<"invalid_token">>})),