"""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)