mitai-jinkendo/backend/tests/test_report_profile_schema.py

32 lines
764 B
Python
Raw Normal View History

"""Berichtsprofil-Schema: Defaults und Validierung."""
from report_profile_schema import (
ReportProfilePayload,
default_report_profile_dict,
parse_report_profile,
)
def test_default_profile_roundtrip():
d = default_report_profile_dict()
p = ReportProfilePayload.model_validate(d)
assert p.version == 1
assert len(p.blocks) >= 3
def test_parse_empty_uses_default():
p = parse_report_profile({})
assert len(p.blocks) >= 1
def test_chart_block_unknown_id_raises():
import pytest
raw = {
"version": 1,
"document_title": "",
"blocks": [{"type": "chart", "chart_id": "not_a_chart", "window_days": 28}],
}
with pytest.raises(Exception):
ReportProfilePayload.model_validate(raw)