Beispiel #1
0
 def test_patch_port_exception(self, mock_patch, mock_log):
     cfg.CONF.set_override('cidr_map',
                           '1.1.1.0/24:physnet_a',
                           group='port_physnet')
     mock_patch.side_effect = exceptions.BadRequestException('invalid data')
     self.hook.before_update(self.data, self.node_info)
     log_msg = "Failed to update port %(uuid)s: %(error)s"
     mock_log.assert_called_with(log_msg, mock.ANY, node_info=mock.ANY)
Beispiel #2
0
    def test_patch_port_exception(self, mock_patch, mock_log):
        self.data['all_interfaces'] = {
             'em1': {"ip": self.ips[0], "mac": self.macs[0],
                     "lldp_processed": {
                        "switch_chassis_id": "192.0.2.1",
                        "switch_port_id": "Ethernet2/66"}
                     }
        }

        mock_patch.side_effect = exceptions.BadRequestException('invalid data')
        self.hook.before_update(self.data, self.node_info)
        log_msg = "Failed to update port %(uuid)s: %(error)s"
        mock_log.warning.assert_called_with(log_msg, mock.ANY,
                                            node_info=mock.ANY)
    def test_failed_to_get_node(self, client_mock, start_mock):
        cli = client_mock.return_value
        cli.get_node.side_effect = os_exc.NotFoundException()
        self.assertRaisesRegex(utils.Error,
                               'Node %s was not found' % self.uuid,
                               introspect.introspect, self.uuid)

        cli.get_node.side_effect = os_exc.BadRequestException()
        self.assertRaisesRegex(utils.Error,
                               'Cannot get node %s: Error' % self.uuid,
                               introspect.introspect, self.uuid)

        self.assertEqual(0, self.node_info.ports.call_count)
        self.assertEqual(0, self.sync_filter_mock.call_count)
        self.assertEqual(0, cli.set_node_power_state.call_count)
        self.assertFalse(start_mock.called)
        self.assertFalse(self.node_info.acquire_lock.called)
Beispiel #4
0
    def test_request(self):
        cls = d_lbaasv2.LBaaSv2Driver
        m_driver = mock.Mock(spec=d_lbaasv2.LBaaSv2Driver)
        loadbalancer = mock.sentinel.loadbalancer
        obj = mock.sentinel.obj
        create = mock.sentinel.create
        find = mock.sentinel.find
        timer = [mock.sentinel.t0]
        m_driver._provisioning_timer.return_value = timer
        m_driver._ensure.side_effect = os_exc.BadRequestException()

        self.assertRaises(os_exc.BadRequestException,
                          cls._ensure_provisioned, m_driver,
                          loadbalancer, obj, create, find)

        m_driver._wait_for_provisioning.assert_has_calls(
            [mock.call(loadbalancer, t, d_lbaasv2._LB_STS_POLL_FAST_INTERVAL)
             for t in timer])
        m_driver._ensure.assert_has_calls(
            [mock.call(obj, create, find) for _ in timer])
    def test_set_boot_device_failure(self, client_mock, start_mock):
        cli = self._prepare(client_mock)
        cli.set_node_boot_device.side_effect = os_exc.BadRequestException()
        start_mock.return_value = self.node_info

        self.async_exc = (utils.Error, 'Failed to set boot device')
        introspect.introspect(self.node.uuid)

        cli.get_node.assert_called_once_with(self.uuid)

        start_mock.assert_called_once_with(self.uuid,
                                           bmc_address=[self.bmc_address],
                                           manage_boot=True,
                                           ironic=cli)
        cli.set_node_boot_device.assert_called_once_with(self.uuid,
                                                         'pxe',
                                                         persistent=False)
        cli.set_node_power_state.assert_not_called()
        start_mock.return_value.finished.assert_called_once_with(
            introspect.istate.Events.error, error=mock.ANY)
        self.node_info.acquire_lock.assert_called_once_with()
        self.node_info.release_lock.assert_called_once_with()