Skip to content

Commit df530a4

Browse files
author
Joakim Nordling
committed
Improve tests by also adding a header
1 parent a589674 commit df530a4

1 file changed

Lines changed: 13 additions & 5 deletions

File tree

openapi_to_fastapi/tests/test_router.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -609,13 +609,21 @@ def handler_1(request, x_my_header: Optional[str] = Header(None)):
609609
def handler_2(request, x_my_header: Optional[str] = Header(None)):
610610
return {}
611611

612-
# Remove the header from handler_2
612+
# Remove the header from handler_2 and add another header instead
613613
sig = inspect.signature(handler_2)
614614
params = sig.parameters
615-
filtered_params = [
615+
modified_params = [
616616
param for param_name, param in params.items() if param_name != "x_my_header"
617617
]
618-
handler_2.__signature__ = sig.replace(parameters=filtered_params)
618+
modified_params.append(
619+
inspect.Parameter(
620+
"x_other_header",
621+
kind=inspect.Parameter.KEYWORD_ONLY,
622+
annotation=Optional[str],
623+
default=Header(None),
624+
)
625+
)
626+
handler_2.__signature__ = sig.replace(parameters=modified_params)
619627

620628
# Add handlers to router (non-decorator syntax)
621629
spec_router.post("/TestValidation_v0.1")(handler_1)
@@ -634,5 +642,5 @@ def handler_2(request, x_my_header: Optional[str] = Header(None)):
634642
headers_1 = {p.get("name") for p in parameters_1 if p.get("in") == "header"}
635643
headers_2 = {p.get("name") for p in parameters_2 if p.get("in") == "header"}
636644

637-
assert "x-my-header" in headers_1
638-
assert "x-my-header" not in headers_2
645+
assert headers_1 == {"x-my-header"}
646+
assert headers_2 == {"x-other-header"}

0 commit comments

Comments
 (0)