예제 #1
0
    def setUp(self):
        super(TestVSCSIAdapter, self).setUp()

        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt
        self.wtsk = mock.create_autospec(pvm_tx.WrapperTask, instance=True)
        self.ftsk = mock.create_autospec(pvm_tx.FeedTask, instance=True)
        self.ftsk.configure_mock(wrapper_tasks={'vios_uuid': self.wtsk})

        @mock.patch('nova.virt.powervm.vm.get_pvm_uuid')
        def init_vol_adpt(mock_pvm_uuid):
            con_info = {
                'serial': 'id',
                'data': {
                    'initiator_target_map': {
                        I_WWPN_1: ['t1'],
                        I_WWPN_2: ['t2', 't3']
                    },
                    'target_lun': '1',
                    'volume_id': 'a_volume_identifier',
                },
            }
            mock_inst = mock.MagicMock()
            mock_pvm_uuid.return_value = '1234'

            return fcvscsi.FCVscsiVolumeAdapter(
                self.adpt, mock_inst, con_info, stg_ftsk=self.ftsk)
        self.vol_drv = init_vol_adpt()
예제 #2
0
    def setUp(self):
        super(TestNetwork, self).setUp()
        self.flags(host='host1')
        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        self.mock_lpar_wrap = mock.MagicMock()
        self.mock_lpar_wrap.can_modify_io.return_value = True, None
예제 #3
0
    def setUp(self):
        super(TestLocalDisk, self).setUp()

        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        # Set up mock for internal VIOS.get()s
        self.mock_vios_get = self.useFixture(fixtures.MockPatch(
            'pypowervm.wrappers.virtual_io_server.VIOS.get')).mock
        # The mock VIOS needs to have scsi_mappings as a list.  Internals are
        # set by individual test cases as needed.
        smaps = [mock.Mock()]
        self.vio_to_vg = mock.Mock(spec=pvm_vios.VIOS, scsi_mappings=smaps)
        # For our tests, we want find_maps to return the mocked list of scsi
        # mappings in our mocked VIOS.
        self.mock_find_maps = self.useFixture(fixtures.MockPatch(
            'pypowervm.tasks.scsi_mapper.find_maps')).mock
        self.mock_find_maps.return_value = smaps

        # Set up for the mocks for get_ls
        self.mock_vg_uuid = self.useFixture(fixtures.MockPatch(
            'pypowervm.tasks.storage.find_vg')).mock
        self.vg_uuid = 'd5065c2c-ac43-3fa6-af32-ea84a3960291'
        self.mock_vg_uuid.return_value = ('vios_uuid', self.vg_uuid)

        # Return the mgmt uuid
        self.mgmt_uuid = self.useFixture(fixtures.MockPatch(
            'nova_powervm.virt.powervm.mgmt.mgmt_uuid')).mock
        self.mgmt_uuid.return_value = 'mp_uuid'

        self.flags(volume_group_name='rootvg', group='powervm')
예제 #4
0
    def setUp(self):
        super(TestLPARBuilder, self).setUp()
        self.sections = xml_sections.load_xml_sections(LPAR_BLDR_DATA)
        self.adpt = self.useFixture(fx.AdapterFx()).adpt

        def _bld_mgd_sys(proc_units, mem_reg, srr, pcm):
            # Build a fake managed system wrapper
            mngd_sys = mock.Mock()
            type(mngd_sys).proc_units_avail = (
                mock.PropertyMock(return_value=proc_units))
            type(mngd_sys).memory_region_size = (
                mock.PropertyMock(return_value=mem_reg))
            capabilities = {
                'simplified_remote_restart_capable': srr,
                'ibmi_restrictedio_capable': True
            }
            mngd_sys.get_capabilities.return_value = capabilities
            type(mngd_sys).proc_compat_modes = (
                mock.PropertyMock(return_value=pcm))
            return mngd_sys

        self.mngd_sys = _bld_mgd_sys(20.0, 128, True, bp.LPARCompat.ALL_VALUES)
        self.mngd_sys_no_srr = _bld_mgd_sys(20.0, 128, False, ['POWER6'])
        self.stdz_sys1 = lpar_bldr.DefaultStandardize(self.mngd_sys)
        self.stdz_sys2 = lpar_bldr.DefaultStandardize(self.mngd_sys_no_srr)
예제 #5
0
    def setUp(self):
        super(TestVNCSocketListener, self).setUp()
        self.adpt = self.useFixture(
            fx.AdapterFx(traits=fx.LocalPVMTraits)).adpt

        self.srv = vterm._VNCSocketListener(self.adpt,
                                            '5901',
                                            '1.2.3.4',
                                            True,
                                            remote_ips=['1.2.3.5'])
        self.srv_no_verify = vterm._VNCSocketListener(self.adpt,
                                                      '5800',
                                                      '1.2.3.4',
                                                      False,
                                                      remote_ips=['1.2.3.5'])
        self.srv_6 = vterm._VNCSocketListener(self.adpt,
                                              '5901',
                                              'fe80:1234',
                                              True,
                                              remote_ips=['fe80:7890'])
        self.rptr = vterm._VNCRepeaterServer(self.adpt, 'uuid', '5800')

        vterm._VNC_LOCAL_PORT_TO_REPEATER['5800'] = self.rptr
        vterm._VNC_PATH_TO_UUID['path'] = 'uuid'
        vterm._VNC_PATH_TO_UUID['test'] = 'uuid'
        vterm._VNC_UUID_TO_LOCAL_PORT['uuid'] = '5800'
예제 #6
0
    def setUp(self):
        super(TestSCSIMapper, self).setUp()
        # Common Adapter
        self.adpt = self.useFixture(fx.AdapterFx()).adpt
        # Don't really sleep
        self.useFixture(fx.SleepFx())

        # Fake URI
        mock_crt_href_p = mock.patch('pypowervm.wrappers.virtual_io_server.'
                                     'VSCSIMapping.crt_related_href')
        self.mock_crt_href = mock_crt_href_p.start()
        self.addCleanup(mock_crt_href_p.stop)
        href = ('https://9.1.2.3:12443/rest/api/uom/ManagedSystem/'
                'c5d782c7-44e4-3086-ad15-b16fb039d63b/LogicalPartition/' +
                LPAR_UUID)
        self.mock_crt_href.return_value = href

        # Mock the delay function, by overriding the sleep
        mock_delay_p = mock.patch('time.sleep')
        self.mock_delay = mock_delay_p.start()
        self.addCleanup(mock_delay_p.stop)

        self.v1resp = tju.load_file(VIO_MULTI_MAP_FILE, self.adpt)
        self.v1wrap = pvm_vios.VIOS.wrap(self.v1resp)
        self.v2resp = tju.load_file(VIO_MULTI_MAP_FILE2, self.adpt)
        self.v2wrap = pvm_vios.VIOS.wrap(self.v2resp)
예제 #7
0
    def setUp(self):
        super(TestVifOvsDriver, self).setUp()

        self.adpt = self.useFixture(
            pvm_fx.AdapterFx(traits=pvm_fx.LocalPVMTraits)).adpt
        self.inst = mock.MagicMock(uuid='inst_uuid')
        self.drv = vif.PvmOvsVifDriver(self.adpt, 'host_uuid', self.inst)
예제 #8
0
 def setUp(self):
     super(TestScrub3, self).setUp()
     self.adpt = self.useFixture(fx.AdapterFx()).adpt
     self.vio_feed = [vios.VIOS.wrap(tju.load_file(VIOS_ENTRY2, self.adpt))]
     self.txfx = self.useFixture(fx.FeedTaskFx(self.vio_feed))
     self.logfx = self.useFixture(fx.LoggingFx())
     self.ftsk = tx.FeedTask('scrub', self.vio_feed)
예제 #9
0
 def setUp(self):
     super(TestSriov, self).setUp()
     self.adpt = self.useFixture(fx.AdapterFx()).adpt
     self.fake_sriovs = [
         good_sriov(1, [
             fake_pport(1, pid, lps, cap)
             for pid, lps, cap in ((11, 0, 0.95), (12, 9, 0.0),
                                   (13, 5, 0.03), (14, 20, 0.987))
         ]), ded_sriov,
         good_sriov(2, [fake_pport(2, 21, 19, 0.3)]), down_sriov,
         good_sriov(3, []),
         good_sriov(4, [
             fake_pport(4, pid, 1, cap)
             for pid, cap in ((41, 0.02), (42, 0.01))
         ]),
         good_sriov(5, [
             fake_pport(5, pid, lps, cap)
             for pid, lps, cap in ((51, 17, 0.49), (52, 3, 0.0),
                                   (53, 50, 0.05), (54, 11, 0.0),
                                   (55, 6, 0.4), (56, 13, 0.1),
                                   (57, 0, 0.15), (58, 7, 1.0))
         ])
     ]
     # Mark link status down on 5/55.
     self.fake_sriovs[6].phys_ports[4].link_status = False
예제 #10
0
 def setUp(self):
     super(TestLULinkedClone, self).setUp()
     self.adpt = self.useFixture(fx.AdapterFx()).adpt
     self.adpt.update_by_path = _mock_update_by_path
     self.adpt.extend_path = lambda x, xag: x
     self.ssp = stor.SSP.bld(self.adpt, 'ssp1', [])
     # img_lu1 not cloned
     self.img_lu1 = self._mk_img_lu(1)
     self.ssp.logical_units.append(self.img_lu1)
     # img_lu2 has two clones
     self.img_lu2 = self._mk_img_lu(2)
     self.ssp.logical_units.append(self.img_lu2)
     self.dsk_lu3 = self._mk_dsk_lu(3, 2)
     self.ssp.logical_units.append(self.dsk_lu3)
     self.dsk_lu4 = self._mk_dsk_lu(4, 2)
     self.ssp.logical_units.append(self.dsk_lu4)
     # img_lu5 has one clone
     self.img_lu5 = self._mk_img_lu(5)
     self.ssp.logical_units.append(self.img_lu5)
     self.dsk_lu6 = self._mk_dsk_lu(6, 5)
     self.ssp.logical_units.append(self.dsk_lu6)
     self.dsk_lu_orphan = self._mk_dsk_lu(7, None)
     self.ssp.logical_units.append(self.dsk_lu_orphan)
     self.ssp.entry.properties = {
         'links': {
             'SELF': ['/rest/api/uom/SharedStoragePool/123']
         }
     }
     self.ssp._etag = 'before'
예제 #11
0
 def setUp(self):
     super(TestRMSTorage, self).setUp()
     self.adptfx = self.useFixture(fx.AdapterFx(traits=fx.RemotePVMTraits))
     self.adpt = self.adptfx.adpt
     self.v_uuid = '14B854F7-42CE-4FF0-BD57-1D117054E701'
     self.vg_uuid = 'b6bdbf1f-eddf-3c81-8801-9859eb6fedcb'
     self.vg_resp = tju.load_file(UPLOAD_VOL_GRP_NEW_VDISK, self.adpt)
예제 #12
0
    def setUp(self):
        super(TestWrapper, self).setUp()
        self.adptfx = None
        self.adpt = None
        adptfx_args = self.mock_adapter_fx_args or {}
        self.adptfx = self.useFixture(fx.AdapterFx(**adptfx_args))
        self.adpt = self.adptfx.adpt

        # Load the file just once...
        if self.__class__._pvmfile is None:
            self.__class__._pvmfile = pvmhttp.PVMFile(self.file)
        # ...but reconstruct the PVMResp every time
        self.resp = pvmhttp.PVMResp(pvmfile=self.__class__._pvmfile,
                                    adapter=self.adpt).get_response()
        # Some wrappers don't support etag.  Subclasses testing those wrappers
        # should not be using self.entries, so ignore.
        try:
            self.entries = self.wrapper_class_to_test.wrap(self.resp)
        except TypeError:
            pass
        if self.resp.feed:
            self.dwrap = self.wrapper_class_to_test.wrap(
                self.resp.feed.entries[0])
        else:
            self.dwrap = self.wrapper_class_to_test.wrap(self.resp.entry)
예제 #13
0
    def setUp(self):
        super(TestConfigDrivePowerVM, self).setUp()

        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        self.validate_vopt = self.useFixture(fixtures.MockPatch(
            'pypowervm.tasks.vopt.validate_vopt_repo_exists')).mock
        self.validate_vopt.return_value = None, None
예제 #14
0
    def setUp(self):
        super(TestVios, self).setUp()
        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt

        def resp(file_name):
            return pvmhttp.load_pvm_resp(file_name).get_response()

        self.vios_feed_resp = resp(VIOS_FEED)
예제 #15
0
 def setUp(self):
     super(TestPartition, self).setUp()
     self.adpt = self.useFixture(
         fx.AdapterFx(traits=fx.RemotePVMTraits)).adpt
     self.mgmt_vio = tju.load_file(VIO_FEED_WITH_MGMT, self.adpt)
     self.mgmt_lpar = tju.load_file(LPAR_FEED_WITH_MGMT, self.adpt)
     self.nomgmt_vio = tju.load_file(VIO_FEED_NO_MGMT, self.adpt)
     self.nomgmt_lpar = tju.load_file(LPAR_FEED_NO_MGMT, self.adpt)
예제 #16
0
    def setUp(self):
        super(TestVOpt, self).setUp()

        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        # Wipe out the static variables, so that the re-validate is called
        vopt._cur_vios_uuid = None
        vopt._cur_vg_uuid = None
예제 #17
0
 def setUp(self, traits_type):
     super(TestIBMi, self).setUp()
     self.traits = traits_type
     self.apt = self.useFixture(pvm_fx.AdapterFx(
         traits=self.traits)).adpt
     self.vio_feed = pvm_vios.VIOS.wrap(
         tju.load_file(VIOS_FEED, self.apt))
     self.vioslist = [self.vio_feed[0], self.vio_feed[1]]
예제 #18
0
    def setUp(self):
        super(TestNPIVAdapter, self).setUp()

        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt

        def resp(file_name):
            return pvmhttp.load_pvm_resp(file_name,
                                         adapter=self.adpt).get_response()

        self.vios_feed_resp = resp(VIOS_FEED)
        self.wwpn1 = '21000024FF649104'
        self.wwpn2 = '21000024FF649107'
        self.vios_uuid = '3443DB77-AED1-47ED-9AA5-3DB9C6CF7089'
        self.slot_mgr = mock.Mock()

        # Set up the transaction manager
        feed = pvm_vios.VIOS.wrap(self.vios_feed_resp)
        self.ft_fx = pvm_fx.FeedTaskFx(feed)
        self.useFixture(self.ft_fx)

        # Set up the mocks for the internal volume driver
        name = 'nova_powervm.virt.powervm.volume.npiv.NPIVVolumeAdapter.'
        self.mock_port_count_p = mock.patch(name + '_ports_per_fabric')
        self.mock_port_count = self.mock_port_count_p.start()
        self.mock_port_count.return_value = 1

        self.mock_fabric_names_p = mock.patch(name + '_fabric_names')
        self.mock_fabric_names = self.mock_fabric_names_p.start()
        self.mock_fabric_names.return_value = ['A']

        self.mock_fabric_ports_p = mock.patch(name + '_fabric_ports')
        self.mock_fabric_ports = self.mock_fabric_ports_p.start()
        self.mock_fabric_ports.return_value = [self.wwpn1, self.wwpn2]

        @mock.patch('pypowervm.wrappers.virtual_io_server.VIOS.getter')
        @mock.patch('nova_powervm.virt.powervm.vm.get_pvm_uuid')
        def init_vol_adpt(mock_pvm_uuid, mock_getter):
            con_info = {
                'serial': 'id',
                'data': {
                    'initiator_target_map': {
                        'i1': ['t1'],
                        'i2': ['t2', 't3']
                    },
                    'target_lun': '1'
                }
            }
            mock_inst = mock.MagicMock()
            mock_pvm_uuid.return_value = '1234'

            # The getter can just return the VIOS values (to remove a read
            # that would otherwise need to be mocked).
            mock_getter.return_value = feed

            return npiv.NPIVVolumeAdapter(self.adpt, 'host_uuid', mock_inst,
                                          con_info)

        self.vol_drv = init_vol_adpt()
예제 #19
0
    def setUp(self):
        super(TestMgmt, self).setUp()
        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        lpar_http = pvmhttp.load_pvm_resp(LPAR_HTTPRESP_FILE, adapter=self.apt)
        self.assertNotEqual(lpar_http, None,
                            "Could not load %s " % LPAR_HTTPRESP_FILE)

        self.resp = lpar_http.response
예제 #20
0
 def setUp(self):
     super(TestMigration, self).setUp()
     self.adpt = self.useFixture(fx.AdapterFx()).adpt
     mock_resp = mock.MagicMock()
     mock_resp.entry = ent.Entry({}, ent.Element('Dummy', self.adpt),
                                 self.adpt)
     self.adpt.read.return_value = mock_resp
     self.lpar_w = mock.MagicMock()
     self.lpar_w.adapter = self.adpt
     self.lpar_w.uuid = '1234'
예제 #21
0
    def setUp(self):
        super(TestLPARBuilder, self).setUp()
        self.sections = xml_sections.load_xml_sections(LPAR_BLDR_DATA)
        self.adpt = self.useFixture(fx.AdapterFx()).adpt

        def _bld_mgd_sys(proc_units,
                         mem_reg,
                         srr,
                         pcm,
                         ame,
                         ppt,
                         affinity=False):
            # Build a fake managed system wrapper
            mngd_sys = mock.Mock()
            type(mngd_sys).proc_units_avail = (mock.PropertyMock(
                return_value=proc_units))
            type(mngd_sys).memory_region_size = (mock.PropertyMock(
                return_value=mem_reg))

            def get_cap(cap):
                capabilities = {
                    'simplified_remote_restart_capable': srr,
                    'ibmi_restrictedio_capable': True,
                    'active_memory_expansion_capable': ame,
                    'physical_page_table_ratio_capable': ppt,
                    'affinity_check_capable': affinity
                }
                return capabilities[cap]

            mngd_sys.get_capability.side_effect = get_cap

            type(mngd_sys).proc_compat_modes = (mock.PropertyMock(
                return_value=pcm))
            return mngd_sys

        self.mngd_sys = _bld_mgd_sys(20.0, 128, True, bp.LPARCompat.ALL_VALUES,
                                     False, False)
        self.mngd_sys_no_srr = _bld_mgd_sys(20.0, 128, False, ['POWER6'],
                                            False, False)
        self.mngd_sys_ame = _bld_mgd_sys(20.0, 128, True,
                                         bp.LPARCompat.ALL_VALUES, True, False)
        self.mngd_sys_ppt = _bld_mgd_sys(20.0, 128, True,
                                         bp.LPARCompat.ALL_VALUES, False, True)
        self.mngd_sys_affinity = _bld_mgd_sys(20.0,
                                              128,
                                              True,
                                              bp.LPARCompat.ALL_VALUES,
                                              False,
                                              True,
                                              affinity=True)
        self.stdz_sys1 = lpar_bldr.DefaultStandardize(self.mngd_sys)
        self.stdz_sys2 = lpar_bldr.DefaultStandardize(self.mngd_sys_no_srr)
        self.stdz_sys3 = lpar_bldr.DefaultStandardize(self.mngd_sys_ame)
        self.stdz_sys4 = lpar_bldr.DefaultStandardize(self.mngd_sys_ppt)
        self.stdz_sys5 = lpar_bldr.DefaultStandardize(self.mngd_sys_affinity)
예제 #22
0
    def setUp(self):
        super(TestVM, self).setUp()
        self.apt = self.useFixture(
            pvm_fx.AdapterFx(traits=pvm_fx.LocalPVMTraits)).adpt
        self.apt.helpers = [pvm_log.log_helper]

        lpar_http = pvmhttp.load_pvm_resp(LPAR_HTTPRESP_FILE, adapter=self.apt)
        self.assertNotEqual(lpar_http, None,
                            "Could not load %s " % LPAR_HTTPRESP_FILE)

        self.resp = lpar_http.response
예제 #23
0
    def setUp(self):
        super(SEAAgentTest, self).setUp()

        self.adpt = self.useFixture(
            pvm_fx.AdapterFx(traits=pvm_fx.LocalPVMTraits)).adpt

        with mock.patch('networking_powervm.plugins.ibm.agent.powervm.utils.'
                        'get_host_uuid'),\
                mock.patch('networking_powervm.plugins.ibm.agent.'
                           'powervm.utils.parse_sea_mappings'):
            self.agent = sea_agent.SharedEthernetNeutronAgent()
            self.agent.adapter = self.adpt
예제 #24
0
    def setUp(self):
        super(TestISCSIAdapter, self).setUp()
        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt

        self.vios_feed_resp = load_file(VIOS_FEED)

        self.feed = pvm_vios.VIOS.wrap(self.vios_feed_resp)
        self.ft_fx = pvm_fx.FeedTaskFx(self.feed)
        self.useFixture(self.ft_fx)

        self.adpt.read.return_value = self.vios_feed_resp

        @mock.patch('pypowervm.wrappers.virtual_io_server.VIOS', autospec=True)
        @mock.patch('nova_powervm.virt.powervm.vm.get_pvm_uuid')
        @mock.patch('pypowervm.tasks.partition.get_mgmt_partition',
                    autospec=True)
        @mock.patch('pypowervm.tasks.hdisk.discover_iscsi_initiator',
                    autospec=True)
        def init_vol_adpt(mock_initiator, mock_mgmt_part, mock_pvm_uuid,
                          mock_vios):
            self.trans_type = 'iscsi'
            self.iqn = 'iqn.2016-08.bar.foo:target'
            self.lun = '1'
            self.host_ip = '10.0.0.1'
            self.user = '******'
            self.password = '******'
            self.serial = 'f042c68a-c5a5-476a-ba34-2f6d43f4226c'
            con_info = {
                'serial': self.serial,
                'driver_volume_type': self.trans_type,
                'data': {
                    'target_iqn': self.iqn,
                    'target_lun': self.lun,
                    'target_portal': self.host_ip,
                    'auth_username': self.user,
                    'auth_password': self.password
                },
            }
            mock_inst = mock.MagicMock()
            mock_pvm_uuid.return_value = '1234'
            mock_initiator.return_value = 'initiatior iqn'
            # The getter can just return the VIOS values (to remove a read
            # that would otherwise need to be mocked).
            mock_vios.getter.return_value = self.feed
            return iscsi.IscsiVolumeAdapter(self.adpt, 'host_uuid', mock_inst,
                                            con_info)
        self.vol_drv = init_vol_adpt()

        # setup system_metadata tests
        self.devname = "/dev/fake"
        self.slot_mgr = mock.Mock()
        self.slot_mgr.build_map.get_vscsi_slot.return_value = 62, 'the_lua'
예제 #25
0
    def setUp(self):
        super(TestHostCPUStats, self).setUp()

        # Fixture for the adapter
        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt

        # Test data
        self.cur_json_resp = pvmhttp.PVMFile(PCM_FILE)
        self.prev_json_resp = pvmhttp.PVMFile(PCM2_FILE)

        # Put in the samples.
        self.phyp = pvm_phyp.PhypInfo(self.cur_json_resp.body)
        self.prev_phyp = pvm_phyp.PhypInfo(self.prev_json_resp.body)
예제 #26
0
    def setUp(self):
        super(PowerVMComputeDriver, self).setUp()

        # Set up the mock CPU stats (init_host uses it)
        self.useFixture(HostCPUStats())

        self.drv = driver.PowerVMDriver(fake.FakeVirtAPI())
        self.drv.adapter = self.useFixture(pvm_fx.AdapterFx()).adpt
        self._init_host()
        self.drv.image_api = mock.Mock()

        disk_adpt_fx = self.useFixture(DiskAdapter())
        self.drv.disk_dvr = disk_adpt_fx.std_disk_adpt
예제 #27
0
    def setUp(self):
        super(TestHostCPUBase, self).setUp()

        # Fixture for the adapter
        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt
        ensure_ltm_p = mock.patch(
            'pypowervm.tasks.monitor.util.ensure_ltm_monitors')
        refresh_p = mock.patch(
            'pypowervm.tasks.monitor.util.MetricCache._refresh_if_needed')
        self.mock_ensure_ltm_monitors = ensure_ltm_p.start()
        self.mock_refresh_if_needed = refresh_p.start()
        self.addCleanup(ensure_ltm_p.stop)
        self.addCleanup(refresh_p.stop)
예제 #28
0
    def setUp(self):
        super(TestVM, self).setUp()

        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        mock_entries = [mock.Mock(), mock.Mock()]
        self.resp = mock.MagicMock()
        self.resp.feed = mock.MagicMock(entries=mock_entries)

        self.get_pvm_uuid = self.useFixture(fixtures.MockPatch(
            'nova.virt.powervm.vm.get_pvm_uuid')).mock

        self.inst = powervm.TEST_INSTANCE
예제 #29
0
    def setUp(self):
        super(TestFileIOVolumeAdapter, self).setUp()

        # Needed for the volume adapter
        self.adpt = self.useFixture(pvm_fx.AdapterFx()).adpt
        mock_inst = mock.MagicMock(uuid='2BC123')

        self.vol_drv = FakeFileIOVolAdapter(self.adpt, 'host_uuid', mock_inst,
                                            None)

        self.mock_vio_task = mock.MagicMock()
        self.mock_stg_ftsk = mock.MagicMock(
            wrapper_tasks={'vios_uuid': self.mock_vio_task})
        self.vol_drv.stg_ftsk = self.mock_stg_ftsk
예제 #30
0
    def setUp(self):
        super(TestLocalDiskFindVG, self).setUp()

        self.apt = self.useFixture(pvm_fx.AdapterFx()).adpt

        def resp(file_name):
            return pvmhttp.load_pvm_resp(file_name,
                                         adapter=self.apt).get_response()

        self.vg_to_vio = resp(VOL_GRP_WITH_VIOS)
        self.vio_to_vg = resp(VIOS_WITH_VOL_GRP)

        self.mock_vios_feed = [pvm_vios.VIOS.wrap(self.vio_to_vg)]
        self.mock_vg_feed = [pvm_stor.VG.wrap(self.vg_to_vio)]