diff options
Diffstat (limited to 'ironic/tests/unit/drivers/modules/test_inspector.py')
-rw-r--r-- | ironic/tests/unit/drivers/modules/test_inspector.py | 48 |
1 files changed, 8 insertions, 40 deletions
diff --git a/ironic/tests/unit/drivers/modules/test_inspector.py b/ironic/tests/unit/drivers/modules/test_inspector.py index fcac0b632..75ccc3ebf 100644 --- a/ironic/tests/unit/drivers/modules/test_inspector.py +++ b/ironic/tests/unit/drivers/modules/test_inspector.py @@ -19,17 +19,14 @@ import openstack from ironic.common import context from ironic.common import exception from ironic.common import states -from ironic.common import swift from ironic.common import utils from ironic.conductor import task_manager from ironic.drivers.modules import inspect_utils from ironic.drivers.modules import inspector from ironic.drivers.modules.redfish import utils as redfish_utils -from ironic import objects from ironic.tests.unit.db import base as db_base from ironic.tests.unit.objects import utils as obj_utils - CONF = inspector.CONF @@ -554,52 +551,23 @@ class CheckStatusTestCase(BaseTestCase): self.task) self.driver.boot.clean_up_ramdisk.assert_called_once_with(self.task) - def test_status_ok_store_inventory_in_db(self, mock_client): - CONF.set_override('data_backend', 'database', - group='inventory') + @mock.patch.object(inspect_utils, 'store_introspection_data', + autospec=True) + def test_status_ok_store_inventory(self, mock_store_data, mock_client): mock_get = mock_client.return_value.get_introspection mock_get.return_value = mock.Mock(is_finished=True, error=None, spec=['is_finished', 'error']) - mock_get_data = mock_client.return_value.get_introspection_data - mock_get_data.return_value = { + fake_introspection_data = { "inventory": {"cpu": "amd"}, "disks": [{"name": "/dev/vda"}]} - inspector._check_status(self.task) - mock_get.assert_called_once_with(self.node.uuid) - mock_get_data.assert_called_once_with(self.node.uuid, processed=True) - - stored = objects.NodeInventory.get_by_node_id(self.context, - self.node.id) - self.assertEqual({"cpu": "amd"}, stored["inventory_data"]) - self.assertEqual({"disks": [{"name": "/dev/vda"}]}, - stored["plugin_data"]) - - @mock.patch.object(swift, 'SwiftAPI', autospec=True) - def test_status_ok_store_inventory_in_swift(self, - swift_api_mock, mock_client): - CONF.set_override('data_backend', 'swift', group='inventory') - CONF.set_override( - 'swift_data_container', 'introspection_data', - group='inventory') - mock_get = mock_client.return_value.get_introspection - mock_get.return_value = mock.Mock(is_finished=True, - error=None, - spec=['is_finished', 'error']) mock_get_data = mock_client.return_value.get_introspection_data - fake_inventory_data = {"cpu": "amd"} - fake_plugin_data = {"disks": [{"name": "/dev/vda"}]} - mock_get_data.return_value = { - "inventory": fake_inventory_data, **fake_plugin_data} - swift_obj_mock = swift_api_mock.return_value - object_name = 'inspector_data-' + str(self.node.uuid) + mock_get_data.return_value = fake_introspection_data inspector._check_status(self.task) mock_get.assert_called_once_with(self.node.uuid) mock_get_data.assert_called_once_with(self.node.uuid, processed=True) - container = 'introspection_data' - swift_obj_mock.create_object_from_data.assert_has_calls([ - mock.call(object_name + '-inventory', fake_inventory_data, - container), - mock.call(object_name + '-plugin', fake_plugin_data, container)]) + mock_store_data.assert_called_once_with(self.node, + fake_introspection_data, + self.task.context) def test_status_ok_store_inventory_nostore(self, mock_client): CONF.set_override('data_backend', 'none', group='inventory') |