Loading src/open_exposure_gateway/api/camara/quality_on_demand/v0_10_1/router.py +25 −2 Original line number Diff line number Diff line from typing import Annotated, Any from typing import Annotated, Any, Optional from fastapi import APIRouter, Depends, Response, status from fastapi import APIRouter, Depends, Query, Response, status from open_exposure_gateway.api.camara.common import XCorrelatorHeader from open_exposure_gateway.api.camara.quality_on_demand.v0_10_1.schemas import ( Loading Loading @@ -114,3 +114,26 @@ async def delete_qod_session( x_correlator=x_correlator, ) return Response(status_code=status.HTTP_204_NO_CONTENT) @router.get( "/qos-profiles", tags=["QoS Profiles"], summary="Get All QoS Profiles", responses=_responses(401, 403, 404, 500, 501, 503), ) async def get_qos_profiles( name: Annotated[Optional[str], Query()] = None, status: Annotated[Optional[str], Query()] = None, ) -> Any: raise NotImplementedException(message="QoS profile catalog is not implemented in this release") @router.get( "/qos-profiles/{name}", tags=["QoS Profiles"], summary="Get QoS Profile for a given name", responses=_responses(400, 401, 403, 404, 500, 501, 503), ) async def get_qos_profile(name: str) -> Any: raise NotImplementedException(message="QoS profile catalog is not implemented in this release") tests/unit/test_qod_flows.py +12 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,18 @@ class TestQodSessionFlow: assert command.network_capability.external_ref == "qod-session-nef-123" class TestQosProfiles: """QoS profile catalog is not implemented yet -- both routes exist but 501.""" def test_get_qos_profiles_returns_501(self, api_client: TestClient) -> None: response = api_client.get(f"{QOD_BASE}/qos-profiles") assert response.status_code == 501 def test_get_qos_profile_by_name_returns_501(self, api_client: TestClient) -> None: response = api_client.get(f"{QOD_BASE}/qos-profiles/voice") assert response.status_code == 501 class TestQodSessionValidation: """CAMARA qod-api.yaml constraints the request schema must enforce (400s).""" Loading Loading
src/open_exposure_gateway/api/camara/quality_on_demand/v0_10_1/router.py +25 −2 Original line number Diff line number Diff line from typing import Annotated, Any from typing import Annotated, Any, Optional from fastapi import APIRouter, Depends, Response, status from fastapi import APIRouter, Depends, Query, Response, status from open_exposure_gateway.api.camara.common import XCorrelatorHeader from open_exposure_gateway.api.camara.quality_on_demand.v0_10_1.schemas import ( Loading Loading @@ -114,3 +114,26 @@ async def delete_qod_session( x_correlator=x_correlator, ) return Response(status_code=status.HTTP_204_NO_CONTENT) @router.get( "/qos-profiles", tags=["QoS Profiles"], summary="Get All QoS Profiles", responses=_responses(401, 403, 404, 500, 501, 503), ) async def get_qos_profiles( name: Annotated[Optional[str], Query()] = None, status: Annotated[Optional[str], Query()] = None, ) -> Any: raise NotImplementedException(message="QoS profile catalog is not implemented in this release") @router.get( "/qos-profiles/{name}", tags=["QoS Profiles"], summary="Get QoS Profile for a given name", responses=_responses(400, 401, 403, 404, 500, 501, 503), ) async def get_qos_profile(name: str) -> Any: raise NotImplementedException(message="QoS profile catalog is not implemented in this release")
tests/unit/test_qod_flows.py +12 −0 Original line number Diff line number Diff line Loading @@ -184,6 +184,18 @@ class TestQodSessionFlow: assert command.network_capability.external_ref == "qod-session-nef-123" class TestQosProfiles: """QoS profile catalog is not implemented yet -- both routes exist but 501.""" def test_get_qos_profiles_returns_501(self, api_client: TestClient) -> None: response = api_client.get(f"{QOD_BASE}/qos-profiles") assert response.status_code == 501 def test_get_qos_profile_by_name_returns_501(self, api_client: TestClient) -> None: response = api_client.get(f"{QOD_BASE}/qos-profiles/voice") assert response.status_code == 501 class TestQodSessionValidation: """CAMARA qod-api.yaml constraints the request schema must enforce (400s).""" Loading