Skip to content

Commit 92cf499

Browse files
fix: route RequestBodyPlainText to request_body_data instead of request_body_json
Co-Authored-By: syed.khadeer@airbyte.io <cloud-support@airbyte.io>
1 parent 69cd63d commit 92cf499

2 files changed

Lines changed: 19 additions & 9 deletions

File tree

airbyte_cdk/sources/declarative/requesters/request_options/interpolated_request_options_provider.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,9 @@ def _resolve_request_body(self) -> None:
101101
self.request_body_data = self.request_body.value
102102
elif self.request_body.type == "RequestBodyGraphQL":
103103
self.request_body_json = self.request_body.value.dict(exclude_none=True)
104-
elif self.request_body.type in ("RequestBodyJsonObject", "RequestBodyPlainText"):
104+
elif self.request_body.type == "RequestBodyPlainText":
105+
self.request_body_data = self.request_body.value
106+
elif self.request_body.type == "RequestBodyJsonObject":
105107
self.request_body_json = self.request_body.value
106108
else:
107109
raise ValueError(f"Unsupported request body type: {self.request_body.type}")

unit_tests/sources/declarative/requesters/request_options/test_interpolated_request_options_provider.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -211,14 +211,6 @@ def test_interpolated_request_json(test_name, input_request_json, expected_reque
211211
RequestBodyJsonObject(type="RequestBodyJsonObject", value={"none_value": "{{ None }}"}),
212212
{},
213213
),
214-
(
215-
"test_string",
216-
RequestBodyPlainText(
217-
type="RequestBodyPlainText",
218-
value="""{"nested": { "key": "{{ config['option'] }}" }}""",
219-
),
220-
{"nested": {"key": "OPTION"}},
221-
),
222214
(
223215
"test_nested_objects",
224216
RequestBodyJsonObject(
@@ -345,6 +337,22 @@ def test_interpolated_request_data(test_name, input_request_data, expected_reque
345337
),
346338
{"2020-01-01 - 12345": "ABC"},
347339
),
340+
(
341+
"test_plain_text_body",
342+
RequestBodyPlainText(
343+
type="RequestBodyPlainText",
344+
value="plain text body content",
345+
),
346+
"plain text body content",
347+
),
348+
(
349+
"test_plain_text_with_interpolation",
350+
RequestBodyPlainText(
351+
type="RequestBodyPlainText",
352+
value="interpolate_me=5&option={{ config['option'] }}",
353+
),
354+
"interpolate_me=5&option=OPTION",
355+
),
348356
],
349357
)
350358
def test_interpolated_request_data_using_request_body(

0 commit comments

Comments
 (0)