Skip to content

Commit 6143783

Browse files
committed
Removed dict name args to opt for more generic log message when overwriting dict values
1 parent 1dfa0e3 commit 6143783

File tree

3 files changed

+38
-13
lines changed

3 files changed

+38
-13
lines changed

src/stepfunctions/steps/sagemaker.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -542,8 +542,7 @@ def __init__(self, state_id, processor, job_name, inputs=None, outputs=None, exp
542542

543543
if Field.Parameters.value in kwargs and isinstance(kwargs[Field.Parameters.value], dict):
544544
# Update processing_parameters with input parameters
545-
merge_dicts(processing_parameters, kwargs[Field.Parameters.value], "Processing Parameters",
546-
"Input Parameters")
545+
merge_dicts(processing_parameters, kwargs[Field.Parameters.value])
547546

548547
kwargs[Field.Parameters.value] = processing_parameters
549548
super(ProcessingStep, self).__init__(state_id, **kwargs)

src/stepfunctions/steps/utils.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,28 +48,26 @@ def get_aws_partition():
4848
return cur_partition
4949

5050

51-
def merge_dicts(target, source, target_name, source_name):
51+
def merge_dicts(target, source):
5252
"""
5353
Merges source dictionary into the target dictionary.
5454
Values in the target dict are updated with the values of the source dict.
5555
Args:
5656
target (dict): Base dictionary into which source is merged
5757
source (dict): Dictionary used to update target. If the same key is present in both dictionaries, source's value
5858
will overwrite target's value for the corresponding key
59-
target_name (str): Name of target dictionary used for logging purposes
60-
source_name (str): Name of source dictionary used for logging purposes
6159
"""
6260
if isinstance(target, dict) and isinstance(source, dict):
6361
for key, value in source.items():
6462
if key in target:
6563
if isinstance(target[key], dict) and isinstance(source[key], dict):
66-
merge_dicts(target[key], source[key], target_name, source_name)
64+
merge_dicts(target[key], source[key])
6765
elif target[key] == value:
6866
pass
6967
else:
7068
logger.info(
71-
f"{target_name} property: <{key}> with value: <{target[key]}>"
72-
f" will be overwritten with value provided in {source_name} : <{value}>")
69+
f"Property: <{key}> with value: <{target[key]}>"
70+
f" will be overwritten with provided value: <{value}>")
7371
target[key] = source[key]
7472
else:
7573
target[key] = source[key]

tests/unit/test_steps_utils.py

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,36 @@ def test_arn_builder_sagemaker_wait_completion():
5353

5454

5555
def test_merge_dicts():
56-
d1 = {'a': {'aa': 1, 'bb': 2, 'cc': 3}, 'b': 1}
57-
d2 = {'a': {'bb': {'aaa': 1, 'bbb': 2}}, 'b': 2, 'c': 3}
58-
59-
merge_dicts(d1, d2, 'd1', 'd2')
60-
assert d1 == {'a': {'aa': 1, 'bb': {'aaa': 1, 'bbb': 2}, 'cc': 3}, 'b': 2, 'c': 3}
56+
d1 = {
57+
'a': {
58+
'aa': 1,
59+
'bb': 2,
60+
'cc': 3
61+
},
62+
'b': 1
63+
}
64+
65+
d2 = {
66+
'a': {
67+
'bb': {
68+
'aaa': 1,
69+
'bbb': 2
70+
}
71+
},
72+
'b': 2,
73+
'c': 3
74+
}
75+
76+
merge_dicts(d1, d2)
77+
assert d1 == {
78+
'a': {
79+
'aa': 1,
80+
'bb': {
81+
'aaa': 1,
82+
'bbb': 2
83+
},
84+
'cc': 3
85+
},
86+
'b': 2,
87+
'c': 3
88+
}

0 commit comments

Comments
 (0)