Fast IAAI implementation

This commit is contained in:
2026-04-24 00:20:42 +03:00
parent 2b0cffc118
commit 3cdb717789
31 changed files with 4880 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
from __future__ import annotations
import json
from iaai_sync_service.runtime_config import RuntimeConfig, load_runtime_config
def test_load_runtime_config_reads_filters(tmp_path) -> None: # noqa: ANN001
config_path = tmp_path / "sync_runtime_config.json"
config_path.write_text(
json.dumps(
{
"sync": {
"condition_check_enabled": "true",
},
"filters": {
"brands": ["Acura", "BMW"],
"models": ["RSX", "3 SERIES"],
"years": [2021, "2022"],
"body_types": ["SUV"],
},
}
),
encoding="utf-8",
)
runtime = load_runtime_config(config_path)
assert runtime.condition_check_enabled is True
assert runtime.filters.brands == {"acura", "bmw"}
assert runtime.filters.models == {"rsx", "3 series"}
assert runtime.filters.years == {2021, 2022}
assert runtime.filters.body_types == {"suv"}
def test_load_runtime_config_returns_defaults_on_invalid_json(tmp_path) -> None: # noqa: ANN001
config_path = tmp_path / "sync_runtime_config.json"
config_path.write_text("{invalid", encoding="utf-8")
runtime = load_runtime_config(config_path)
assert runtime == RuntimeConfig()