переименовывание аккаунтов админом

This commit is contained in:
2026-06-17 16:43:43 +03:00
parent 3291c67b2c
commit b302ec769a
3 changed files with 114 additions and 26 deletions
+23
View File
@@ -106,6 +106,29 @@ def test_admin_edit_match_and_filters(client: TestClient, make_admin):
assert bp["faction_name"] == "Хаоситы"
def test_admin_rename_account(client: TestClient, make_admin):
"""Админ переименовывает аккаунт: валидируется формат и уникальность ника."""
a = login(client, "Старое")
client.post("/api/auth/dev/users", json={"nickname": "Занятое"}, headers=csrf_headers(client))
_admin_login(client, make_admin)
r = client.patch(
f"/api/admin/users/{a['id']}", json={"nickname": "Новое"}, headers=csrf_headers(client)
)
assert r.status_code == 200, r.text
assert r.json()["nickname"] == "Новое"
# Занятый ник → 409, некорректный формат → 422.
r = client.patch(
f"/api/admin/users/{a['id']}", json={"nickname": "Занятое"}, headers=csrf_headers(client)
)
assert r.status_code == 409 and r.json()["error"]["code"] == "NICKNAME_TAKEN", r.text
r = client.patch(
f"/api/admin/users/{a['id']}", json={"nickname": "x"}, headers=csrf_headers(client)
)
assert r.status_code == 422, r.text
def test_dev_delete_account_keeps_matches(client: TestClient, make_admin):
"""DEV-удаление: аккаунт удаляется, партии живут (игрок вычёркивается),
его созданные партии и группы переназначаются на админа."""