def test_parse_driver_info_drac_host_and_drac_address(self, mock_log): driver_info = db_utils.get_test_drac_info() driver_info['drac_host'] = '4.5.6.7' node = obj_utils.create_test_node(self.context, driver='idrac', driver_info=driver_info) info = drac_common.parse_driver_info(node) self.assertEqual('4.5.6.7', driver_info['drac_host']) self.assertEqual(driver_info['drac_address'], info['drac_address']) self.assertTrue(mock_log.called)
def test_parse_driver_info_drac_host_and_drac_address(self, mock_log): driver_info = db_utils.get_test_drac_info() driver_info['drac_host'] = '4.5.6.7' node = obj_utils.create_test_node(self.context, driver='fake_drac', driver_info=driver_info) info = drac_common.parse_driver_info(node) self.assertEqual('4.5.6.7', driver_info['drac_host']) self.assertEqual(driver_info['drac_address'], info['drac_address']) self.assertTrue(mock_log.called)
""" import time from xml.etree import ElementTree import mock from ironic.common import exception from ironic.drivers.modules.drac import client as drac_client from ironic.tests import base from ironic.tests.unit.db import utils as db_utils from ironic.tests.unit.drivers.modules.drac import utils as test_utils from ironic.tests.unit.drivers import third_party_driver_mock_specs \ as mock_specs INFO_DICT = db_utils.get_test_drac_info() @mock.patch.object(drac_client, 'pywsman', spec_set=mock_specs.PYWSMAN_SPEC) class DracClientTestCase(base.TestCase): def setUp(self): super(DracClientTestCase, self).setUp() self.resource_uri = 'http://foo/wsman' def test_wsman_enumerate(self, mock_client_pywsman): mock_xml = test_utils.mock_wsman_root('<test></test>') mock_pywsman_client = mock_client_pywsman.Client.return_value mock_pywsman_client.enumerate.return_value = mock_xml client = drac_client.Client(**INFO_DICT)
# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. import collections from oslo_utils import importutils from ironic.tests.unit.db import base as db_base from ironic.tests.unit.db import utils as db_utils INFO_DICT = db_utils.get_test_drac_info() dracclient_job = importutils.try_import('dracclient.resources.job') dracclient_raid = importutils.try_import('dracclient.resources.raid') class BaseDracTest(db_base.DbTestCase): def setUp(self): super(BaseDracTest, self).setUp() self.config( enabled_hardware_types=['idrac', 'fake-hardware'], enabled_boot_interfaces=['idrac-redfish-virtual-media', 'fake'], enabled_power_interfaces=['idrac-wsman', 'fake'], enabled_management_interfaces=['idrac-wsman', 'fake'], enabled_inspect_interfaces=['idrac-wsman', 'fake', 'no-inspect'], enabled_vendor_interfaces=['idrac-wsman', 'fake', 'no-vendor'],
from ironic.common import exception from ironic.conductor import task_manager from ironic.drivers.modules.drac import bios from ironic.drivers.modules.drac import client as drac_client from ironic.drivers.modules.drac import management as drac_mgmt from ironic.drivers.modules.drac import resource_uris from ironic.tests.unit.conductor import utils as mgr_utils from ironic.tests.unit.db import base as db_base from ironic.tests.unit.db import utils as db_utils from ironic.tests.unit.drivers.modules.drac import bios_wsman_mock from ironic.tests.unit.drivers.modules.drac import utils as test_utils from ironic.tests.unit.objects import utils as obj_utils from six.moves.urllib.parse import unquote FAKE_DRAC = db_utils.get_test_drac_info() def _base_config(responses=[]): for resource in [resource_uris.DCIM_BIOSEnumeration, resource_uris.DCIM_BIOSString, resource_uris.DCIM_BIOSInteger]: xml_root = test_utils.mock_wsman_root( bios_wsman_mock.Enumerations[resource]['XML']) responses.append(xml_root) return responses def _set_config(responses=[]): ccj_xml = test_utils.build_soap_xml([{'DCIM_LifecycleJob': {'Name': 'fake'}}],
from ironic.common import exception from ironic.conductor import task_manager from ironic.drivers.modules.drac import bios from ironic.drivers.modules.drac import client as drac_client from ironic.drivers.modules.drac import management as drac_mgmt from ironic.drivers.modules.drac import resource_uris from ironic.tests.unit.conductor import utils as mgr_utils from ironic.tests.unit.db import base as db_base from ironic.tests.unit.db import utils as db_utils from ironic.tests.unit.drivers.modules.drac import bios_wsman_mock from ironic.tests.unit.drivers.modules.drac import utils as test_utils from ironic.tests.unit.objects import utils as obj_utils from six.moves.urllib.parse import unquote FAKE_DRAC = db_utils.get_test_drac_info() def _base_config(responses=[]): for resource in [ resource_uris.DCIM_BIOSEnumeration, resource_uris.DCIM_BIOSString, resource_uris.DCIM_BIOSInteger ]: xml_root = test_utils.mock_wsman_root( bios_wsman_mock.Enumerations[resource]['XML']) responses.append(xml_root) return responses def _set_config(responses=[]): ccj_xml = test_utils.build_soap_xml([{