Spaces:
Sleeping
Sleeping
| """Regression tests for Phase 1/2 audit fixes.""" | |
| from __future__ import annotations | |
| import pytest | |
| from app.agentic.speculative_executor import _mapping_for_learned_tool | |
| from app.db.database import multi_section_parallel_enabled | |
| def test_generate_api_imports_multi_section_parallel() -> None: | |
| """POST /generate must resolve multi_section_parallel_enabled (no NameError).""" | |
| from app.api import generate as generate_api | |
| assert callable(generate_api.multi_section_parallel_enabled) | |
| def test_multi_section_parallel_import_from_database() -> None: | |
| assert callable(multi_section_parallel_enabled) | |
| def test_learned_speculative_mapping_retrieve_rag() -> None: | |
| fn = _mapping_for_learned_tool("retrieve_survey_rag") | |
| args = fn({"last_query": "roof tiles"}) | |
| assert args.get("query") == "roof tiles" | |
| def test_learned_speculative_mapping_section_plan() -> None: | |
| fn = _mapping_for_learned_tool("submit_section_plan") | |
| args = fn({"section_code": "E1", "outline": "x"}) | |
| assert args.get("section_code") == "E1" | |
| async def test_qdrant_hybrid_merge_off_event_loop(monkeypatch) -> None: | |
| """_hybrid_merge_vector_rows is callable from run_sync_in_executor.""" | |
| from langchain_community.embeddings import FakeEmbeddings | |
| from langchain_core.documents import Document | |
| from app.models.schemas import SearchResult | |
| from app.vectorstore.qdrant_wrapper import QdrantVectorStore | |
| vs = QdrantVectorStore.__new__(QdrantVectorStore) | |
| vs._bm25_texts = {"t1": ["roof defect"]} | |
| vs._bm25_rows = { | |
| "t1": [ | |
| SearchResult( | |
| chunk_id="c1", | |
| doc_id="d1", | |
| tenant_id="t1", | |
| text="roof defect", | |
| score=0.5, | |
| section_type="paragraph", | |
| hierarchy_level="paragraph", | |
| ) | |
| ] | |
| } | |
| rows = [ | |
| SearchResult( | |
| chunk_id="c2", | |
| doc_id="d1", | |
| tenant_id="t1", | |
| text="vector hit", | |
| score=0.9, | |
| section_type="paragraph", | |
| hierarchy_level="paragraph", | |
| ) | |
| ] | |
| merged = vs._hybrid_merge_vector_rows( | |
| "roof", | |
| "t1", | |
| 3, | |
| rows, | |
| hierarchy_level=None, | |
| doc_id_in=None, | |
| ) | |
| assert merged | |