mirror of
https://github.com/fastapi/fastapi.git
synced 2026-02-12 07:11:05 -05:00
Co-authored-by: lokidev <torsten.zielke@protonmail.com> Co-authored-by: Motov Yurii <109919500+YuriiMotov@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yurii Motov <yurii.motov.monte@gmail.com> Co-authored-by: Sebastián Ramírez <tiangolo@gmail.com>
28 lines
628 B
Python
28 lines
628 B
Python
from typing import Annotated
|
|
|
|
from fastapi import Depends, FastAPI
|
|
from fastapi.testclient import TestClient
|
|
from typing_extensions import TypeAliasType
|
|
|
|
|
|
async def some_value() -> int:
|
|
return 123
|
|
|
|
|
|
DependedValue = TypeAliasType(
|
|
"DependedValue", Annotated[int, Depends(some_value)], type_params=()
|
|
)
|
|
|
|
|
|
def test_pep695_type_dependencies():
|
|
app = FastAPI()
|
|
|
|
@app.get("/")
|
|
async def get_with_dep(value: DependedValue) -> str: # noqa
|
|
return f"value: {value}"
|
|
|
|
client = TestClient(app)
|
|
response = client.get("/")
|
|
assert response.status_code == 200
|
|
assert response.text == '"value: 123"'
|