Coverage for genschema / comparators / template.py: 91%
23 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 dataclasses import dataclass
2from typing import Any, Optional
5@dataclass
6class ToDelete:
7 content: int | float | str | list | dict = ""
8 comparator_trigger: Optional["Comparator"] = None
11@dataclass
12class Resource:
13 id: str
14 type: str
15 content: Any
18@dataclass
19class ProcessingContext:
20 schemas: list[Resource]
21 jsons: list[Resource]
22 sealed: bool = False
25ComparatorResult = tuple[Optional[dict[str, ToDelete | Any | bool]], Optional[list[dict]]]
28class Comparator:
29 name = "base"
31 def can_process(self, ctx: ProcessingContext, env: str, prev_result: dict) -> bool:
32 return False
34 def process(self, ctx: ProcessingContext, env: str, prev_result: dict) -> ComparatorResult:
35 return None, None