from __future__ import annotations from types import SimpleNamespace from app.core.api.controllers.request_controller import RequestController from app.core.api.domain.models.agent_request import AgentRequest from app.schemas.orchestration import RequestExecutionStatus def test_get_request_returns_route_selection() -> None: request = AgentRequest.create("req-1", "sess-1", "Объясни /health", "v2") request.status = RequestExecutionStatus.DONE request.set_route( routing_domain="DOCS", intent="DOC_EXPLAIN", subintent="SUMMARY", subintent_label="объяснение документации", subintent_comment="отвечаю на вопрос по существующей документации с опорой на найденные документы", ) controller = RequestController(SimpleNamespace(get=lambda _request_id: request)) response = controller.get_request("req-1") assert response.route is not None assert response.route.routing_domain == "DOCS" assert response.route.intent == "DOC_EXPLAIN" assert response.route.subintent == "SUMMARY" assert response.route.subintent_label == "объяснение документации" assert ( response.route.subintent_comment == "отвечаю на вопрос по существующей документации с опорой на найденные документы" )