Рефакторинг обработчиков. Часть 3 #21

This commit is contained in:
2026-05-13 23:02:59 +03:00
parent 61bb44ab4a
commit 40806df62a
91 changed files with 6138 additions and 7150 deletions

View File

@@ -0,0 +1,36 @@
%%%-------------------------------------------------------------------
%%% @doc Тесты административного API для профиля текущего администратора.
%%% Покрывает GET /v1/admin/me и PUT /v1/admin/me.
%%% @end
%%%-------------------------------------------------------------------
-module(admin_me_tests).
-include_lib("eunit/include/eunit.hrl").
-export([test/0]).
-spec test() -> ok.
test() ->
ct:pal("=== Admin Me Tests ==="),
Token = api_test_runner:get_admin_token(),
test_get_me(Token),
test_update_me(Token),
ct:pal("=== All admin me tests passed ==="),
ok.
test_get_me(Token) ->
ct:pal(" TEST: Get current admin profile"),
Me = api_test_runner:admin_get(<<"/v1/admin/me">>, Token),
?assert(is_map(Me)),
?assert(maps:is_key(<<"id">>, Me)),
?assert(maps:is_key(<<"email">>, Me)),
ct:pal(" OK: got profile for ~s", [maps:get(<<"email">>, Me)]).
test_update_me(Token) ->
ct:pal(" TEST: Update current admin profile"),
Updated = api_test_runner:admin_put(<<"/v1/admin/me">>, Token,
#{nickname => <<"TestNick">>, timezone => <<"UTC">>}),
?assertEqual(<<"TestNick">>, maps:get(<<"nickname">>, Updated)),
?assertEqual(<<"UTC">>, maps:get(<<"timezone">>, Updated)),
ct:pal(" OK").