Browse Source

🎨 [pre-commit.ci] Auto format from pre-commit.com hooks

pull/10318/head
pre-commit-ci[bot] 2 years ago
parent
commit
0c507ec1bf
  1. 4
      fastapi/_compat.py
  2. 19
      tests/test_alias_in_form.py

4
fastapi/_compat.py

@ -262,7 +262,9 @@ if PYDANTIC_V2:
def create_body_model(
*, fields: Sequence[ModelField], model_name: str
) -> Type[BaseModel]:
field_params = {f.field_info.alias: (f.field_info.annotation, f.field_info) for f in fields}
field_params = {
f.field_info.alias: (f.field_info.annotation, f.field_info) for f in fields
}
BodyModel: Type[BaseModel] = create_model(model_name, **field_params) # type: ignore[call-overload]
return BodyModel

19
tests/test_alias_in_form.py

@ -3,26 +3,29 @@ from typing import Annotated
from fastapi import FastAPI, Form
from starlette.testclient import TestClient
app: FastAPI = FastAPI()
app:FastAPI = FastAPI()
@app.post("/testing_alias")
async def check_alias(id_test: Annotated[int, Form(alias="otherId")]):
return {"other_id":id_test}
return {"other_id": id_test}
@app.patch("/testing")
async def check_without_alias(id_test:Annotated[int, Form()]):
return {"id_test":id_test}
async def check_without_alias(id_test: Annotated[int, Form()]):
return {"id_test": id_test}
client = TestClient(app)
def test_without_alias():
response = client.patch("/testing", data={"id_test":1})
response = client.patch("/testing", data={"id_test": 1})
assert response.status_code == 200
assert response.json() == {"id_test":1}
assert response.json() == {"id_test": 1}
def test_get_alias():
response = client.post("/testing_alias", data={"otherId":"1"})
response = client.post("/testing_alias", data={"otherId": "1"})
assert response.status_code == 200
assert response.json() == {"other_id":1}
assert response.json() == {"other_id": 1}

Loading…
Cancel
Save