🎨 Auto format

This commit is contained in:
pre-commit-ci-lite[bot] 2025-12-04 03:15:15 +00:00 committed by GitHub
parent 120a7d94b5
commit d33d030fec
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 39 additions and 17 deletions

View File

@ -49,11 +49,15 @@ def test_openapi_mixed_pydantic_models_with_separate_input_output_schemas() -> N
app = FastAPI(separate_input_output_schemas=True)
@app.post("/v1-users/", response_model=UserV1)
def create_v1_user(user: UserV1) -> UserV1: # pragma: no cover - behavior tested via OpenAPI
def create_v1_user(
user: UserV1,
) -> UserV1: # pragma: no cover - behavior tested via OpenAPI
return user
@app.post("/v2-users/", response_model=UserV2)
def create_v2_user(user: UserV2) -> UserV2: # pragma: no cover - behavior tested via OpenAPI
def create_v2_user(
user: UserV2,
) -> UserV2: # pragma: no cover - behavior tested via OpenAPI
return user
client = TestClient(app)
@ -71,19 +75,27 @@ def test_openapi_mixed_pydantic_models_with_separate_input_output_schemas() -> N
assert user_v1_keys, "Expected at least one schema for UserV1 (Pydantic v1 model)."
assert user_v2_keys, "Expected at least one schema for UserV2 (Pydantic v2 model)."
assert address_v1_keys, "Expected at least one schema for AddressV1 (Pydantic v1 model)."
assert address_v2_keys, "Expected at least one schema for AddressV2 (Pydantic v2 model)."
assert address_v1_keys, (
"Expected at least one schema for AddressV1 (Pydantic v1 model)."
)
assert address_v2_keys, (
"Expected at least one schema for AddressV2 (Pydantic v2 model)."
)
# Ensure that references in the OpenAPI document point to schemas for both versions
all_refs = list(_collect_refs(openapi_schema))
assert any("UserV1" in ref for ref in all_refs), "Expected at least one $ref to a UserV1 schema."
assert any("UserV2" in ref for ref in all_refs), "Expected at least one $ref to a UserV2 schema."
assert any(
"AddressV1" in ref for ref in all_refs
), "Expected at least one $ref to an AddressV1 schema."
assert any(
"AddressV2" in ref for ref in all_refs
), "Expected at least one $ref to an AddressV2 schema."
assert any("UserV1" in ref for ref in all_refs), (
"Expected at least one $ref to a UserV1 schema."
)
assert any("UserV2" in ref for ref in all_refs), (
"Expected at least one $ref to a UserV2 schema."
)
assert any("AddressV1" in ref for ref in all_refs), (
"Expected at least one $ref to an AddressV1 schema."
)
assert any("AddressV2" in ref for ref in all_refs), (
"Expected at least one $ref to an AddressV2 schema."
)
@needs_pydanticv2
@ -92,11 +104,15 @@ def test_openapi_mixed_pydantic_models_without_separate_input_output_schemas() -
app = FastAPI(separate_input_output_schemas=False)
@app.post("/v1-users/", response_model=UserV1)
def create_v1_user(user: UserV1) -> UserV1: # pragma: no cover - behavior tested via OpenAPI
def create_v1_user(
user: UserV1,
) -> UserV1: # pragma: no cover - behavior tested via OpenAPI
return user
@app.post("/v2-users/", response_model=UserV2)
def create_v2_user(user: UserV2) -> UserV2: # pragma: no cover - behavior tested via OpenAPI
def create_v2_user(
user: UserV2,
) -> UserV2: # pragma: no cover - behavior tested via OpenAPI
return user
client = TestClient(app)
@ -114,9 +130,15 @@ def test_openapi_mixed_pydantic_models_without_separate_input_output_schemas() -
assert user_v1_keys, "Expected at least one schema for UserV1 (Pydantic v1 model)."
assert user_v2_keys, "Expected at least one schema for UserV2 (Pydantic v2 model)."
assert address_v1_keys, "Expected at least one schema for AddressV1 (Pydantic v1 model)."
assert address_v2_keys, "Expected at least one schema for AddressV2 (Pydantic v2 model)."
assert address_v1_keys, (
"Expected at least one schema for AddressV1 (Pydantic v1 model)."
)
assert address_v2_keys, (
"Expected at least one schema for AddressV2 (Pydantic v2 model)."
)
# Check that there are no obviously broken references (all $ref values should target components/schemas)
all_refs = list(_collect_refs(openapi_schema))
assert all(ref.startswith("#/components/schemas/") for ref in all_refs), "Found a $ref outside components/schemas."
assert all(ref.startswith("#/components/schemas/") for ref in all_refs), (
"Found a $ref outside components/schemas."
)