diff options
author | Yaron Yogev <yaronyogev@gmail.com> | 2017-08-28 07:06:52 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-08-28 07:06:52 +0000 |
commit | 834c0f5899a7823ce77453aae4add76245b794c6 (patch) | |
tree | 993acfaa6f2010e74ea6a3f73495714e1c8b917f /app/test/event_based_scan/test_instance_update.py | |
parent | 23f0c36a014295988d5fcbf9f0bda0ae2cb54057 (diff) | |
parent | 2f9d5cf583b4b5dd635f386cb9ac07435bd44cc8 (diff) |
Merge "Heavily refactored all event based scans"
Diffstat (limited to 'app/test/event_based_scan/test_instance_update.py')
-rw-r--r-- | app/test/event_based_scan/test_instance_update.py | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/app/test/event_based_scan/test_instance_update.py b/app/test/event_based_scan/test_instance_update.py index 6abccb5..b16a5b7 100644 --- a/app/test/event_based_scan/test_instance_update.py +++ b/app/test/event_based_scan/test_instance_update.py @@ -8,7 +8,9 @@ # http://www.apache.org/licenses/LICENSE-2.0 # ############################################################################### from discover.events.event_instance_update import EventInstanceUpdate -from test.event_based_scan.test_data.event_payload_instance_update import EVENT_PAYLOAD_INSTANCE_UPDATE, INSTANCE_DOCUMENT +from test.event_based_scan.test_data.event_payload_instance_update \ + import EVENT_PAYLOAD_INSTANCE_UPDATE, INSTANCE_DOCUMENT, \ + UPDATED_INSTANCE_FIELDS from test.event_based_scan.test_event import TestEvent @@ -18,29 +20,19 @@ class TestInstanceUpdate(TestEvent): self.values = EVENT_PAYLOAD_INSTANCE_UPDATE payload = self.values['payload'] self.instance_id = payload['instance_id'] - self.item_ids.append(self.instance_id) - new_name = payload['display_name'] - # preparing instance to be updated - instance = self.inv.get_by_id(self.env, self.instance_id) - if not instance: - self.log.info("instance document is not found, add document for updating") + instance = INSTANCE_DOCUMENT - # add instance document for updating - self.set_item(INSTANCE_DOCUMENT) - instance = self.inv.get_by_id(self.env, self.instance_id) - self.assertIsNotNone(instance) - self.assertEqual(instance['name'], INSTANCE_DOCUMENT['name']) - - name_path = instance['name_path'] - new_name_path = name_path[:name_path.rindex('/') + 1] + new_name + self.inv.get_by_id.return_value = instance # update instance document - EventInstanceUpdate().handle(self.env, self.values) + res = EventInstanceUpdate().handle(self.env, self.values) - # get new document - instance = self.inv.get_by_id(self.env, self.instance_id) + self.assertTrue(res.result) + self.assertTrue(self.inv.values_replace.called) + self.assertTrue(self.inv.set.called) - # check update result. - self.assertEqual(instance['name'], new_name) - self.assertEqual(instance['name_path'], new_name_path) + # check that all changed fields are updated + call_args, _ = self.inv.set.call_args + self.assertTrue(all(item in call_args[0].items() + for item in UPDATED_INSTANCE_FIELDS.items())) |