diff --git a/tests/test_forwardref_in_annotation.py b/tests/test_forwardref_in_annotation.py new file mode 100644 index 0000000000..9ccc73f508 --- /dev/null +++ b/tests/test_forwardref_in_annotation.py @@ -0,0 +1,23 @@ +from typing import Annotated, ForwardRef + +from fastapi import Depends, FastAPI +from fastapi.testclient import TestClient + + +def test_annotated_forwardref_dependency(): + app = FastAPI() + + User = ForwardRef("User") + + def get_user() -> "User": + return {"name": "amulya"} + + @app.get("/") + def read_user(user: Annotated[User, Depends(get_user)]): + return user + + client = TestClient(app) + response = client.get("/") + + assert response.status_code == 200 + assert response.json() == {"name": "amulya"}