Skip to content

Commit 623f0e7

Browse files
committed
fix graphql request body interpolation and conversion
1 parent 78dbcc2 commit 623f0e7

File tree

3 files changed

+6
-13
lines changed

3 files changed

+6
-13
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ def _resolve_request_body(self) -> None:
100100
if self.request_body.type == "RequestBodyUrlEncodedForm":
101101
self.request_body_data = self.request_body.value
102102
elif self.request_body.type == "RequestBodyGraphQL":
103-
self.request_body_json = {"query": self.request_body.value.query}
103+
self.request_body_json = self.request_body.value.dict()
104104
elif self.request_body.type in ("RequestBodyJsonObject", "RequestBodyPlainText"):
105105
self.request_body_json = self.request_body.value
106106
else:

unit_tests/manifest_migrations/conftest.py

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -741,8 +741,7 @@ def manifest_with_request_body_json_and_data_to_migrate_to_request_body() -> Dic
741741
# this example holds the GraphQL query object.
742742
"request_body_json": {
743743
"query": {
744-
"field": "{{ config['query_field'] }}",
745-
"value": "{{ config['query_value'] }}",
744+
"query { {{ config['query_field'] }} { {{ config['query_value'] }} }}",
746745
}
747746
},
748747
},
@@ -975,10 +974,7 @@ def expected_manifest_with_migrated_to_request_body() -> Dict[str, Any]:
975974
"request_body": {
976975
"type": "RequestBodyGraphQL",
977976
"value": {
978-
"query": {
979-
"field": "{{ config['query_field'] }}",
980-
"value": "{{ config['query_value'] }}",
981-
}
977+
"query": "query { {{ config['query_field'] }} { {{ config['query_value'] }} }}",
982978
},
983979
},
984980
},
@@ -1138,10 +1134,7 @@ def expected_manifest_with_migrated_to_request_body() -> Dict[str, Any]:
11381134
"request_body": {
11391135
"type": "RequestBodyGraphQL",
11401136
"value": {
1141-
"query": {
1142-
"field": "{{ config['query_field'] }}",
1143-
"value": "{{ config['query_value'] }}",
1144-
}
1137+
"query": "query { {{ config['query_field'] }} { {{ config['query_value'] }} }}",
11451138
},
11461139
},
11471140
},

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -239,10 +239,10 @@ def test_interpolated_request_json(test_name, input_request_json, expected_reque
239239
RequestBodyGraphQL(
240240
type="RequestBodyGraphQL",
241241
value=RequestBodyGraphQlQuery(
242-
query={"query_key": "{{ config['option'] }}", "query_key_2": "value"}
242+
query="query { {{ config['option'] }} }"
243243
),
244244
),
245-
{"query": {"query_key": "OPTION", "query_key_2": "value"}},
245+
{"query": "query { OPTION }"},
246246
),
247247
],
248248
)

0 commit comments

Comments
 (0)