Spaces:
Runtime error
Runtime error
| """Bulk-fix backend test fixtures for official RICS L3 54-leaf matrix.""" | |
| from __future__ import annotations | |
| from pathlib import Path | |
| ROOT = Path(__file__).resolve().parents[1] / "backend" / "tests" | |
| REPLACEMENTS = [ | |
| ('E2 Roof coverings', 'D2 Roof coverings'), | |
| ('Section D3 - Roof coverings', 'Section D2 - Roof coverings'), | |
| ('Section E2 Roof coverings', 'Section D2 - Roof coverings'), | |
| ('paragraph_section_id="E2"', 'paragraph_section_id="D2"'), | |
| ('paragraph_section_id=schema.paragraph_section_id("E2")', 'paragraph_section_id=schema.paragraph_section_id("D2")'), | |
| ('section_id="E2"', 'section_id="D2"'), | |
| ('section_id: str = "E2"', 'section_id: str = "D2"'), | |
| ('SectionDefinition(id="E2", title="Roof coverings"', 'SectionDefinition(id="D2", title="Roof coverings"'), | |
| ('"template_id": "E2"', '"template_id": "D2"'), | |
| ('template_id="E2"', 'template_id="D2"'), | |
| ('sec = "E2"', 'sec = "D2"'), | |
| ('section_code: str = "E2"', 'section_code: str = "D2"'), | |
| ('section_code="E2"', 'section_code="D2"'), | |
| ('"section_code": "E2"', '"section_code": "D2"'), | |
| ('section_label="Roof coverings",\n paragraph_section_id="E2"', 'section_label="Roof coverings",\n paragraph_section_id="D2"'), | |
| ('hits[0].section_id == "E2"', 'hits[0].section_id == "D2"'), | |
| ('reference_sources[0].section_id == "E2"', 'reference_sources[0].section_id == "D2"'), | |
| ('sources[0].section_id == "E2"', 'sources[0].section_id == "D2"'), | |
| ('chunks[0].section_id == "E2"', 'chunks[0].section_id == "D2"'), | |
| ('s.section_id == "D3"', 's.section_id == "D2"'), | |
| ('result.sections if s.section_id == "D3"', 'result.sections if s.section_id == "D2"'), | |
| ('next(s for s in result.sections if s.section_id == "E2")', 'next(s for s in result.sections if s.section_id == "D2")'), | |
| ('next(s for s in result.sections if s.section_id == "D3")', 'next(s for s in result.sections if s.section_id == "D2")'), | |
| ('assert "E2" in sections', 'assert "D2" in sections'), | |
| ('sections["E2"]', 'sections["D2"]'), | |
| ('"E2":', '"D2":'), | |
| ('aliases["E2"]', 'aliases["D2"]'), | |
| ('"E2": "Roof Coverings"', '"D2": "Roof Coverings"'), | |
| ('analyze_docx_photo_layout(ref, {"E2"})', 'analyze_docx_photo_layout(ref, {"D2"})'), | |
| ('section_photo_paths={"E2":', 'section_photo_paths={"D2":'), | |
| ('save_tenant_photo_layout(tenant, {"E2":', 'save_tenant_photo_layout(tenant, {"D2":'), | |
| ('list_section_photos(tenant, draft, "E2"', 'list_section_photos(tenant, draft, "D2"'), | |
| ('vision_observations_for_section(tenant, draft, "E2"', 'vision_observations_for_section(tenant, draft, "D2"'), | |
| ('upload_section_photo(\n tenant, draft, "E2"', 'upload_section_photo(\n tenant, draft, "D2"'), | |
| ('set_ai_selection(tenant, draft, "E2"', 'set_ai_selection(tenant, draft, "D2"'), | |
| ('any(s["code"] == "E2"', 'any(s["code"] == "D2"'), | |
| ('D3: slate', 'D2: slate'), | |
| ('only_section_ids=["D3"]', 'only_section_ids=["D2"]'), | |
| ] | |
| SKIP = {"test_notes_parser.py", "test_notes_keyword_router.py", "test_rics_canonical_l3.py"} | |
| def main() -> None: | |
| changed: list[str] = [] | |
| for path in ROOT.rglob("*.py"): | |
| if path.name in SKIP: | |
| continue | |
| text = path.read_text(encoding="utf-8") | |
| orig = text | |
| for old, new in REPLACEMENTS: | |
| text = text.replace(old, new) | |
| if text != orig: | |
| path.write_text(text, encoding="utf-8") | |
| changed.append(str(path.relative_to(ROOT.parent.parent))) | |
| print("Changed", len(changed), "files") | |
| for p in sorted(changed): | |
| print(" ", p) | |
| if __name__ == "__main__": | |
| main() | |