Skip to content

Commit b7486b1

Browse files
fix tests
1 parent 36e19c3 commit b7486b1

File tree

1 file changed

+31
-10
lines changed

1 file changed

+31
-10
lines changed

test/test_modules/test_cli_clone.py

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ def test_create_metadata_item_rule(self, mock_add_metadata_rule):
116116
@patch.object(clone_module, 'list_metadata_items')
117117
def test_compare_create_metadata_items_new_fields(self, mock_list, mock_create):
118118
"""Test comparing and creating new metadata fields"""
119-
mock_source_fields = {
119+
metadata_fields = {
120120
'metadata_fields': [
121121
{
122122
'external_id': 'field1',
@@ -131,6 +131,8 @@ def test_compare_create_metadata_items_new_fields(self, mock_list, mock_create):
131131
]
132132
}
133133

134+
mock_source_fields = metadata_fields
135+
mock_list.return_value = metadata_fields
134136
mock_destination_fields = {
135137
'metadata_fields': []
136138
}
@@ -142,11 +144,15 @@ def test_compare_create_metadata_items_new_fields(self, mock_list, mock_create):
142144
mock_create.assert_any_call('add_metadata_field', mock_source_fields['metadata_fields'][0], self.mock_target_config)
143145
mock_create.assert_any_call('add_metadata_field', mock_source_fields['metadata_fields'][1], self.mock_target_config)
144146

147+
result = clone_module.list_metadata_items("metadata_fields", self.mock_target_config)
148+
mock_list.assert_called_once()
149+
self.assertEqual(result, mock_list.return_value)
150+
145151
@patch.object(clone_module, 'create_metadata_item')
146152
@patch.object(clone_module, 'list_metadata_items')
147153
def test_compare_create_metadata_items_new_rules(self, mock_list, mock_create):
148154
"""Test comparing and creating new metadata rules"""
149-
mock_source_metadata_rules = {
155+
metadata_rules = {
150156
'metadata_rules': [
151157
{
152158
'external_id': 'rule1',
@@ -168,6 +174,9 @@ def test_compare_create_metadata_items_new_rules(self, mock_list, mock_create):
168174
}
169175
]
170176
}
177+
178+
mock_source_metadata_rules = metadata_rules
179+
mock_list.return_value = metadata_rules
171180

172181
mock_destination_metadata_rules = {
173182
'metadata_rules': []
@@ -180,14 +189,12 @@ def test_compare_create_metadata_items_new_rules(self, mock_list, mock_create):
180189
mock_create.assert_any_call('add_metadata_rule', mock_source_metadata_rules['metadata_rules'][0], self.mock_target_config)
181190
mock_create.assert_any_call('add_metadata_rule', mock_source_metadata_rules['metadata_rules'][1], self.mock_target_config)
182191

183-
result = clone_module.list_metadata_items("metadata_rules")
184-
mock_list.return_value = mock_source_metadata_rules
192+
result = clone_module.list_metadata_items("metadata_rules", self.mock_target_config)
185193
mock_list.assert_called_once()
186194
self.assertEqual(result, mock_list.return_value)
187195

188196
@patch.object(clone_module, 'create_metadata_item')
189-
@patch.object(clone_module, 'list_metadata_items')
190-
def test_compare_create_metadata_items_existing_fields(self, mock_list, mock_create):
197+
def test_compare_create_metadata_items_existing_fields(self, mock_create):
191198
"""Test comparing when fields already exist"""
192199
mock_source_fields = {
193200
'metadata_fields': [
@@ -210,14 +217,14 @@ def test_compare_create_metadata_items_existing_fields(self, mock_list, mock_cre
210217
]
211218
}
212219

220+
mock_source_fields
213221
clone_module.compare_create_metadata_items(mock_source_fields, mock_destination_fields, self.mock_target_config, key="metadata_fields")
214222

215223
# No fields should be created
216224
mock_create.assert_not_called()
217225

218226
@patch.object(clone_module, 'create_metadata_item')
219-
@patch.object(clone_module, 'list_metadata_items')
220-
def test_compare_create_metadata_items_existing_rules(self, mock_list, mock_create):
227+
def test_compare_create_metadata_items_existing_rules(self, mock_create):
221228
"""Test comparing when rules already exist"""
222229

223230
mock_source_metadata_rules = {
@@ -258,7 +265,7 @@ def test_compare_create_metadata_items_existing_rules(self, mock_list, mock_crea
258265
@patch.object(clone_module, 'list_metadata_items')
259266
def test_compare_create_metadata_items_mixed_scenario(self, mock_list, mock_create):
260267
"""Test comparing with mix of new and existing fields"""
261-
mock_source_fields = {
268+
metadata_fields = {
262269
'metadata_fields': [
263270
{
264271
'external_id': 'field1',
@@ -283,17 +290,24 @@ def test_compare_create_metadata_items_mixed_scenario(self, mock_list, mock_crea
283290
}
284291
]
285292
}
293+
294+
mock_source_fields= metadata_fields
295+
mock_list.return_value = metadata_fields
286296

287297
clone_module.compare_create_metadata_items(mock_source_fields, mock_destination_fields, self.mock_target_config, key="metadata_fields")
288298

289299
# Only new_field should be created
290300
mock_create.assert_called_once_with('add_metadata_field', mock_source_fields['metadata_fields'][1], self.mock_target_config)
301+
302+
result = clone_module.list_metadata_items("metadata_fields", self.mock_target_config)
303+
mock_list.assert_called_once()
304+
self.assertEqual(result, mock_list.return_value)
291305

292306
@patch.object(clone_module, 'create_metadata_item')
293307
@patch.object(clone_module, 'list_metadata_items')
294308
def test_compare_create_metadata_items_mixed_rules_scenario(self, mock_list, mock_create):
295309
"""Test comparing with mix of new and existing rules"""
296-
mock_source_metadata_rules = {
310+
metadata_rules = {
297311
'metadata_rules': [
298312
{
299313
'external_id': 'rule1',
@@ -330,11 +344,18 @@ def test_compare_create_metadata_items_mixed_rules_scenario(self, mock_list, moc
330344
}
331345
]
332346
}
347+
348+
mock_source_metadata_rules = metadata_rules
349+
mock_list.return_value = metadata_rules
333350

334351
clone_module.compare_create_metadata_items(mock_source_metadata_rules, mock_destination_metadata_rules, self.mock_target_config, key="metadata_rules")
335352

336353
# Only new_rule should be created
337354
mock_create.assert_called_once_with('add_metadata_rule', mock_source_metadata_rules['metadata_rules'][1], self.mock_target_config)
338355

356+
result = clone_module.list_metadata_items("metadata_rules", self.mock_target_config)
357+
mock_list.assert_called_once()
358+
self.assertEqual(result, mock_list.return_value)
359+
339360
if __name__ == '__main__':
340361
unittest.main()

0 commit comments

Comments
 (0)