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)
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)
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()