log
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
from fastapi.testclient import TestClient
|
||||
|
||||
from app.db.repositories import SystemLogRepository
|
||||
|
||||
|
||||
def test_manual_sync_calls_shared_manager(authenticated_client, fake_sync_manager) -> None:
|
||||
response = authenticated_client.post(
|
||||
@@ -60,3 +62,30 @@ def test_system_page_shows_scheduler_state(app, authenticated_client) -> None:
|
||||
assert "1.0.0" in response.text
|
||||
assert "5" in response.text # sync_interval_minutes
|
||||
assert "0" in response.text # user_count / activity_count fresh DB
|
||||
|
||||
|
||||
class _FakeScheduler:
|
||||
def __init__(self) -> None:
|
||||
self.last_tick = None
|
||||
self.next_tick = None
|
||||
|
||||
|
||||
def test_system_page_shows_empty_log_state(app, authenticated_client) -> None:
|
||||
app.state.scheduler = _FakeScheduler()
|
||||
|
||||
response = authenticated_client.get("/system")
|
||||
assert response.status_code == 200
|
||||
assert "No system log entries" in response.text
|
||||
|
||||
|
||||
def test_system_page_shows_recorded_log_entries(app, authenticated_client) -> None:
|
||||
app.state.scheduler = _FakeScheduler()
|
||||
with app.state.session_factory() as session:
|
||||
SystemLogRepository(session).add(
|
||||
source="email_notification", message="Failed to email alerts@example.com: SMTP timeout"
|
||||
)
|
||||
|
||||
response = authenticated_client.get("/system")
|
||||
assert response.status_code == 200
|
||||
assert "email_notification" in response.text
|
||||
assert "SMTP timeout" in response.text
|
||||
|
||||
Reference in New Issue
Block a user