Skip to content

Commit 58a64fe

Browse files
mypy and format fix
1 parent a11038e commit 58a64fe

File tree

2 files changed

+15
-7
lines changed

2 files changed

+15
-7
lines changed

airbyte_cdk/sources/declarative/transformations/dpath_flatten_fields.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,18 @@ class DpathFlattenFields(RecordTransformation):
2525
parameters: InitVar[Mapping[str, Any]]
2626
delete_origin_value: bool = False
2727
replace_record: bool = False
28-
key_transformation: Union[InterpolatedString, str] = None
28+
key_transformation: Union[InterpolatedString, str, None] = None
2929

3030
def __post_init__(self, parameters: Mapping[str, Any]) -> None:
31+
self._parameters = parameters
3132
self._field_path = [
32-
InterpolatedString.create(path, parameters=parameters) for path in self.field_path
33+
InterpolatedString.create(path, parameters=self._parameters) for path in self.field_path
3334
]
3435
for path_index in range(len(self.field_path)):
3536
if isinstance(self.field_path[path_index], str):
3637
self._field_path[path_index] = InterpolatedString.create(
37-
self.field_path[path_index], parameters=parameters
38+
self.field_path[path_index], parameters=self._parameters
3839
)
39-
self.parameters = parameters
4040

4141
def transform(
4242
self,
@@ -53,11 +53,12 @@ def transform(
5353
extracted = dpath.get(record, path, default=[])
5454

5555
if isinstance(extracted, dict):
56-
5756
if self.key_transformation:
5857
updated_extracted = {}
5958
for key, value in extracted.items():
60-
updated_key = InterpolatedString.create(self.key_transformation, parameters=self.parameters).eval(key=key, config=self.config)
59+
updated_key = InterpolatedString.create(
60+
self.key_transformation, parameters=self._parameters
61+
).eval(key=key, config=self.config)
6162
updated_extracted[updated_key] = value
6263
extracted = updated_extracted
6364

unit_tests/sources/declarative/transformations/test_dpath_flatten_fields.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
_DO_NOT_REPLACE_WITH_VALUE = False
1010
_NO_KEY_TRANSFORMATIONS = None
1111

12+
1213
@pytest.mark.parametrize(
1314
[
1415
"input_record",
@@ -173,7 +174,13 @@
173174
],
174175
)
175176
def test_dpath_flatten_lists(
176-
input_record, config, field_path, delete_origin_value, replace_record, key_transformation, expected_record
177+
input_record,
178+
config,
179+
field_path,
180+
delete_origin_value,
181+
replace_record,
182+
key_transformation,
183+
expected_record,
177184
):
178185
flattener = DpathFlattenFields(
179186
field_path=field_path,

0 commit comments

Comments
 (0)