Browse Source

Add route facade test coverage for default APIRoute paths.

Exercise IntEnum status normalization and Response return-annotation inference to keep routing refactor coverage at required threshold.

Made-with: Cursor
pull/15210/head
rajratanm 4 months ago
parent
commit
5dddf1c821
  1. 22
      tests/test_routing_facade_contract.py

22
tests/test_routing_facade_contract.py

@ -1,4 +1,7 @@
from enum import IntEnum
import fastapi.routing as routing
from starlette.responses import Response
from fastapi.routing_handlers import RouteHandlerConfig
from fastapi.routing_router import APIRouter
from fastapi.routing_routes import APIRoute, APIWebSocketRoute
@ -34,3 +37,22 @@ def test_routing_facade_re_exports_handler_contracts() -> None:
def test_routing_ping_constant_compatibility() -> None:
assert isinstance(routing._PING_INTERVAL, (float, int))
class _CreatedStatus(IntEnum):
CREATED = 201
def _raw_response_endpoint() -> Response:
return Response(content="ok")
def test_api_route_defaults_and_intenum_status_paths() -> None:
route = routing.APIRoute(
"/raw-response",
_raw_response_endpoint,
status_code=_CreatedStatus.CREATED,
)
assert route.response_model is None
assert route.status_code == 201
assert route.methods == {"GET"}

Loading…
Cancel
Save