Coverage for genschema / comparators / schema_version.py: 100%
9 statements
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-14 22:23 +0000
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-14 22:23 +0000
1from .template import Comparator, ComparatorResult, ProcessingContext
4class SchemaVersionComparator(Comparator):
5 """
6 Компаратор для установки версии JSON Schema на верхнем уровне.
7 """
9 name = "schema_version"
11 def __init__(self, version: str = "https://json-schema.org/draft/2020-12/schema"):
12 self._version = version
14 def can_process(self, ctx: ProcessingContext, env: str, prev_result: dict) -> bool:
15 return env == "/" and "$schema" not in prev_result
17 def process(self, ctx: ProcessingContext, env: str, prev_result: dict) -> ComparatorResult:
18 return {"$schema": self._version}, None