37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
import pytest
|
|
from app.engine import DuckDBEngine
|
|
|
|
|
|
def test_engine_init_and_counts(engine: DuckDBEngine):
|
|
counts = engine.get_table_counts()
|
|
assert "sleep" in counts
|
|
assert "nutrition" in counts
|
|
assert "mila" in counts
|
|
assert "garmin_daily" in counts
|
|
assert counts["sleep"] > 0
|
|
assert counts["nutrition"] > 0
|
|
|
|
|
|
def test_mila_dashboard_payload(engine: DuckDBEngine):
|
|
data = engine.get_mila_dashboard()
|
|
assert data["status"] == "ok"
|
|
assert data["metadata"]["subject"] == "mila"
|
|
assert "live_status" in data
|
|
assert "today" in data
|
|
assert "averages" in data
|
|
assert "history" in data
|
|
assert "growth" in data
|
|
assert len(data["history"]) > 0
|
|
|
|
|
|
def test_moritz_dashboard_payload(engine: DuckDBEngine):
|
|
data = engine.get_moritz_dashboard()
|
|
assert data["status"] == "ok"
|
|
assert data["metadata"]["subject"] == "moritz"
|
|
assert "today" in data
|
|
assert "yesterday" in data
|
|
assert "garmin_recovery" in data
|
|
assert "seven_days" in data
|
|
assert "thirty_days" in data
|
|
assert len(data["thirty_days"]["days"]) > 0
|