Skip to content

Commit dda53f5

Browse files
committed
fix: incorrect json formatting
1 parent 69c1c2b commit dda53f5

File tree

5 files changed

+10
-10
lines changed

5 files changed

+10
-10
lines changed

src/openapi_python_generator/language_converters/python/service_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ def _generate_body_dump_expression(data = "data") -> str:
4040
return f"{data}.model_dump()"
4141

4242
# rely on pydantic v2 to serialise (slowest, but best compatibility)
43-
return f"{data}.model_dump_json()"
43+
return f"{data}.model_dump(mode=\"json\")"
4444

4545

4646
def generate_body_param(operation: Operation) -> Union[str, None]:

src/openapi_python_generator/language_converters/python/templates/aiohttp.jinja2

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ async def {{ operation_id }}({{ params }} api_config_override : Optional[APIConf
2525
params=query_params,
2626
{% if body_param %}
2727
{% if use_orjson %}
28-
data=orjson.dumps({{ body_param }})
28+
data=orjson.dumps({{ body_param | safe }})
2929
{% else %}
30-
json = {{ body_param }}
30+
json = {{ body_param | safe}}
3131
{% endif %}
3232
{% endif %}
3333
) as inital_response:

src/openapi_python_generator/language_converters/python/templates/httpx.jinja2

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ with httpx.Client(base_url=base_path, verify=api_config.verify) as client:
3030
params=query_params,
3131
{% if body_param %}
3232
{% if use_orjson %}
33-
content=orjson.dumps({{ body_param }})
33+
content=orjson.dumps({{ body_param | safe }})
3434
{% else %}
35-
json = {{ body_param }}
35+
json = {{ body_param | safe }}
3636
{% endif %}
3737
{% endif %}
3838
)

src/openapi_python_generator/language_converters/python/templates/requests.jinja2

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ def {{ operation_id }}({{ params }} api_config_override : Optional[APIConfig] =
2525
verify=api_config.verify,
2626
{% if body_param %}
2727
{% if use_orjson %}
28-
content=orjson.dumps({{ body_param }})
28+
content=orjson.dumps({{ body_param | safe }})
2929
{% else %}
30-
json = {{ body_param }}
30+
json = {{ body_param | safe }}
3131
{% endif %}
3232
{% endif %}
3333
)

tests/test_service_generator.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,14 @@ def test_generate_body_param_pydanticv1(test_openapi_operation, expected_result,
8888
}
8989
)
9090
),
91-
"data.model_dump_json()",
91+
"data.model_dump(mode=\"json\")",
9292
),
9393
(
9494
Operation(
9595
responses=default_responses,
9696
requestBody=Reference(ref="#/components/schemas/TestModel")
9797
),
98-
"data.model_dump_json()",
98+
"data.model_dump(mode=\"json\")",
9999
),
100100
(
101101
Operation(
@@ -111,7 +111,7 @@ def test_generate_body_param_pydanticv1(test_openapi_operation, expected_result,
111111
}
112112
)
113113
),
114-
"[i.model_dump_json() for i in data]",
114+
"[i.model_dump(mode=\"json\") for i in data]",
115115
),
116116
(Operation(responses=default_responses, requestBody=None), None),
117117
],

0 commit comments

Comments
 (0)