Files

39 lines
1.4 KiB
Python
Raw Permalink Normal View History

2026-07-11 02:10:27 +02:00
"""Tests for admin endpoints."""
import pytest
@pytest.mark.asyncio
class TestAdmin:
"""Admin routes require admin role."""
async def test_dashboard_requires_admin(self, client, user_token):
client.cookies.set("token", user_token)
resp = await client.get("/admin/", follow_redirects=False)
assert resp.status_code == 401
async def test_dashboard_as_admin(self, client, admin_token):
client.cookies.set("token", admin_token)
resp = await client.get("/admin/")
assert resp.status_code == 200
assert "text/html" in resp.headers["content-type"]
async def test_series_admin_requires_admin(self, client, user_token):
client.cookies.set("token", user_token)
resp = await client.get("/admin/series", follow_redirects=False)
assert resp.status_code == 401
async def test_series_admin_as_admin(self, client, admin_token):
client.cookies.set("token", admin_token)
resp = await client.get("/admin/series")
assert resp.status_code == 200
async def test_sets_admin_as_admin(self, client, admin_token):
client.cookies.set("token", admin_token)
resp = await client.get("/admin/sets")
assert resp.status_code == 200
async def test_cards_admin_as_admin(self, client, admin_token):
client.cookies.set("token", admin_token)
resp = await client.get("/admin/cards")
assert resp.status_code == 200