Merge "Enable H904 PEP8 check"

This commit is contained in:
Jenkins 2014-10-10 21:30:34 +00:00 committed by Gerrit Code Review
commit b212144220
22 changed files with 168 additions and 159 deletions

View File

@ -773,8 +773,8 @@ class NodesController(rest.RestController):
rpc_node = objects.Node.get_by_uuid(pecan.request.context, node_uuid)
# Check if node is transitioning state
if rpc_node['target_power_state'] or \
rpc_node['target_provision_state']:
if (rpc_node['target_power_state'] or
rpc_node['target_provision_state']):
msg = _("Node %s can not be updated while a state transition "
"is in progress.")
raise wsme.exc.ClientSideError(msg % node_uuid, status_code=409)

View File

@ -112,12 +112,12 @@ class DriverFactory(object):
def _check_func(ext):
return ext.name in CONF.enabled_drivers
cls._extension_manager = \
cls._extension_manager = (
dispatch.NameDispatchExtensionManager(
'ironic.drivers',
_check_func,
invoke_on_load=True,
on_load_failure_callback=_catch_driver_not_found)
on_load_failure_callback=_catch_driver_not_found))
LOG.info(_LI("Loaded the following drivers: %s"),
cls._extension_manager.names())

View File

@ -205,8 +205,8 @@ class BaseImageService(object):
(image_id, self.glance_host,
self.glance_port, use_ssl) = service_utils.parse_image_ref(image_id)
if self.version == 2 \
and 'file' in CONF.glance.allowed_direct_url_schemes:
if (self.version == 2 and
'file' in CONF.glance.allowed_direct_url_schemes):
location = self._get_location(image_id)
url = urlparse.urlparse(location)

View File

@ -110,8 +110,8 @@ def _get_api_server():
that will cycle through the list, looping around to the beginning
if necessary.
"""
api_server = CONF.glance.glance_api_servers or \
CONF.glance.glance_host + ':' + str(CONF.glance.glance_port)
api_server = (CONF.glance.glance_api_servers or
CONF.glance.glance_host + ':' + str(CONF.glance.glance_port))
if '//' not in api_server:
api_server = CONF.glance.glance_protocol + '://' + api_server
url = urlparse.urlparse(api_server)

View File

@ -278,8 +278,7 @@ class ConductorManager(periodic_task.PeriodicTasks):
# instance_uuid needs to be unset, and handle it.
if 'instance_uuid' in delta:
task.driver.power.validate(task)
node_obj.power_state = \
task.driver.power.get_power_state(task)
node_obj.power_state = task.driver.power.get_power_state(task)
if node_obj.power_state != states.POWER_OFF:
raise exception.NodeInWrongPowerState(
@ -1214,8 +1213,9 @@ class ConductorManager(periodic_task.PeriodicTasks):
'event_type': 'hardware.ipmi.metrics.update'}
try:
with task_manager.acquire(context, node_uuid, shared=True) \
as task:
with task_manager.acquire(context,
node_uuid,
shared=True) as task:
task.driver.management.validate(task)
sensors_data = task.driver.management.get_sensors_data(
task)

View File

@ -68,10 +68,9 @@ def node_power_action(task, new_state):
curr_state = task.driver.power.get_power_state(task)
except Exception as e:
with excutils.save_and_reraise_exception():
node['last_error'] = \
_("Failed to change power state to '%(target)s'. "
"Error: %(error)s") % {
'target': new_state, 'error': e}
node['last_error'] = _(
"Failed to change power state to '%(target)s'. "
"Error: %(error)s") % {'target': new_state, 'error': e}
node['target_power_state'] = states.NOSTATE
node.save()
@ -114,10 +113,9 @@ def node_power_action(task, new_state):
task.driver.power.reboot(task)
except Exception as e:
with excutils.save_and_reraise_exception():
node['last_error'] = \
_("Failed to change power state to '%(target)s'. "
"Error: %(error)s") % {
'target': target_state, 'error': e}
node['last_error'] = _(
"Failed to change power state to '%(target)s'. "
"Error: %(error)s") % {'target': target_state, 'error': e}
else:
# success!
node['power_state'] = target_state

View File

@ -289,8 +289,8 @@ class Connection(api.Connection):
if not utils.is_uuid_like(instance):
raise exception.InvalidUUID(uuid=instance)
query = model_query(models.Node).\
filter_by(instance_uuid=instance)
query = (model_query(models.Node)
.filter_by(instance_uuid=instance))
try:
result = query.one()
@ -505,8 +505,8 @@ class Connection(api.Connection):
def register_conductor(self, values, update_existing=False):
session = get_session()
with session.begin():
query = model_query(models.Conductor, session=session).\
filter_by(hostname=values['hostname'])
query = (model_query(models.Conductor, session=session)
.filter_by(hostname=values['hostname']))
try:
ref = query.one()
if ref.online is True and not update_existing:
@ -524,19 +524,17 @@ class Connection(api.Connection):
def get_conductor(self, hostname):
try:
return model_query(models.Conductor).\
filter_by(hostname=hostname,
online=True).\
one()
return (model_query(models.Conductor)
.filter_by(hostname=hostname, online=True)
.one())
except NoResultFound:
raise exception.ConductorNotFound(conductor=hostname)
def unregister_conductor(self, hostname):
session = get_session()
with session.begin():
query = model_query(models.Conductor, session=session).\
filter_by(hostname=hostname,
online=True)
query = (model_query(models.Conductor, session=session)
.filter_by(hostname=hostname, online=True))
count = query.update({'online': False})
if count == 0:
raise exception.ConductorNotFound(conductor=hostname)
@ -544,8 +542,8 @@ class Connection(api.Connection):
def touch_conductor(self, hostname):
session = get_session()
with session.begin():
query = model_query(models.Conductor, session=session).\
filter_by(hostname=hostname)
query = (model_query(models.Conductor, session=session)
.filter_by(hostname=hostname))
# since we're not changing any other field, manually set updated_at
# and since we're heartbeating, make sure that online=True
count = query.update({'updated_at': timeutils.utcnow(),
@ -558,10 +556,10 @@ class Connection(api.Connection):
interval = CONF.conductor.heartbeat_timeout
limit = timeutils.utcnow() - datetime.timedelta(seconds=interval)
result = model_query(models.Conductor).\
filter_by(online=True).\
filter(models.Conductor.updated_at >= limit).\
all()
result = (model_query(models.Conductor)
.filter_by(online=True)
.filter(models.Conductor.updated_at >= limit)
.all())
# build mapping of drivers to the set of hosts which support them
d2c = collections.defaultdict(set)

View File

@ -195,8 +195,8 @@ def notify(address, port):
def get_dev(address, port, iqn, lun):
"""Returns a device path for given parameters."""
dev = "/dev/disk/by-path/ip-%s:%s-iscsi-%s-lun-%s" \
% (address, port, iqn, lun)
dev = ("/dev/disk/by-path/ip-%s:%s-iscsi-%s-lun-%s"
% (address, port, iqn, lun))
return dev

View File

@ -510,14 +510,14 @@ class NativeIPMIShellinaboxConsole(base.ConsoleInterface):
pw_file = console_utils.make_persistent_password_file(
path, driver_info['password'])
console_cmd = "/:%(uid)s:%(gid)s:HOME:pyghmicons %(bmc)s" \
" %(user)s" \
" %(passwd_file)s" \
% {'uid': os.getuid(),
'gid': os.getgid(),
'bmc': driver_info['address'],
'user': driver_info['username'],
'passwd_file': pw_file}
console_cmd = ("/:%(uid)s:%(gid)s:HOME:pyghmicons %(bmc)s"
" %(user)s"
" %(passwd_file)s"
% {'uid': os.getuid(),
'gid': os.getgid(),
'bmc': driver_info['address'],
'user': driver_info['username'],
'passwd_file': pw_file})
try:
console_utils.start_shellinabox_console(driver_info['uuid'],
driver_info['port'],

View File

@ -236,8 +236,8 @@ def _parse_driver_info(node):
# check if ipmi_bridging has proper value
if bridging_type == 'no':
# if bridging is not selected, then set all bridging params to None
local_address = transit_channel = transit_address = \
target_channel = target_address = None
(local_address, transit_channel, transit_address, target_channel,
target_address) = (None,) * 5
elif bridging_type in bridging_types:
# check if the particular bridging option is supported on host
if not _is_option_supported('%s_bridge' % bridging_type):
@ -962,13 +962,13 @@ class IPMIShellinaboxConsole(base.ConsoleInterface):
pw_file = console_utils.make_persistent_password_file(
path, driver_info['password'])
ipmi_cmd = "/:%(uid)s:%(gid)s:HOME:ipmitool -H %(address)s" \
" -I lanplus -U %(user)s -f %(pwfile)s" \
% {'uid': os.getuid(),
'gid': os.getgid(),
'address': driver_info['address'],
'user': driver_info['username'],
'pwfile': pw_file}
ipmi_cmd = ("/:%(uid)s:%(gid)s:HOME:ipmitool -H %(address)s"
" -I lanplus -U %(user)s -f %(pwfile)s"
% {'uid': os.getuid(),
'gid': os.getgid(),
'address': driver_info['address'],
'user': driver_info['username'],
'pwfile': pw_file})
for name, option in BRIDGING_OPTIONS:
if driver_info[name] is not None:

View File

@ -60,8 +60,8 @@ class TestNoExceptionTracebackHook(base.FunctionalTest):
# instead of'\n'.join(trace). But since RemoteError is kind of very
# rare thing (happens due to wrong deserialization settings etc.)
# we don't care about this garbage.
expected_msg = "Remote error: %s %s" \
% (test_exc_type, self.MSG_WITHOUT_TRACE) + "\n[u'"
expected_msg = ("Remote error: %s %s"
% (test_exc_type, self.MSG_WITHOUT_TRACE) + "\n[u'")
actual_msg = json.loads(response.json['error_message'])['faultstring']
self.assertEqual(expected_msg, actual_msg)

View File

@ -273,8 +273,9 @@ class TestListNodes(base.FunctionalTest):
self.assertEqual(400, response.status_code)
def test_associated_nodes_insensitive(self):
associated_nodes = self._create_association_test_nodes().\
get('associated')
associated_nodes = (self
._create_association_test_nodes()
.get('associated'))
data = self.get_json('/nodes?associated=true')
data1 = self.get_json('/nodes?associated=True')
@ -292,8 +293,9 @@ class TestListNodes(base.FunctionalTest):
self.assertTrue(response.json['error_message'])
def test_unassociated_nodes_insensitive(self):
unassociated_nodes = self._create_association_test_nodes().\
get('unassociated')
unassociated_nodes = (self
._create_association_test_nodes()
.get('unassociated'))
data = self.get_json('/nodes?associated=false')
data1 = self.get_json('/nodes?associated=FALSE')
@ -304,8 +306,9 @@ class TestListNodes(base.FunctionalTest):
self.assertEqual(sorted(unassociated_nodes), sorted(uuids))
def test_unassociated_nodes_with_limit(self):
unassociated_nodes = self._create_association_test_nodes().\
get('unassociated')
unassociated_nodes = (self
._create_association_test_nodes()
.get('unassociated'))
data = self.get_json('/nodes?associated=False&limit=2')
@ -319,8 +322,9 @@ class TestListNodes(base.FunctionalTest):
self.assertIn('associated=True', data['next'])
def test_detail_with_association_filter(self):
associated_nodes = self._create_association_test_nodes().\
get('associated')
associated_nodes = (self
._create_association_test_nodes()
.get('associated'))
data = self.get_json('/nodes/detail?associated=true')
self.assertIn('driver', data['nodes'][0])
self.assertEqual(len(associated_nodes), len(data['nodes']))
@ -487,8 +491,10 @@ class TestPatch(base.FunctionalTest):
def test_update_ok(self):
self.mock_update_node.return_value = self.node
self.mock_update_node.return_value.updated_at = \
"2013-12-03T06:20:41.184720+00:00"
(self
.mock_update_node
.return_value
.updated_at) = "2013-12-03T06:20:41.184720+00:00"
response = self.patch_json('/nodes/%s' % self.node['uuid'],
[{'path': '/instance_uuid',
'value': 'aaaaaaaa-1111-bbbb-2222-cccccccccccc',
@ -1063,8 +1069,8 @@ class TestPut(base.FunctionalTest):
self.assertEqual(400, ret.status_code)
def test_set_console_mode_enabled(self):
with mock.patch.object(rpcapi.ConductorAPI, 'set_console_mode') \
as mock_scm:
with mock.patch.object(rpcapi.ConductorAPI,
'set_console_mode') as mock_scm:
ret = self.put_json('/nodes/%s/states/console' % self.node.uuid,
{'enabled': "true"})
self.assertEqual(202, ret.status_code)
@ -1078,8 +1084,8 @@ class TestPut(base.FunctionalTest):
expected_location)
def test_set_console_mode_disabled(self):
with mock.patch.object(rpcapi.ConductorAPI, 'set_console_mode') \
as mock_scm:
with mock.patch.object(rpcapi.ConductorAPI,
'set_console_mode') as mock_scm:
ret = self.put_json('/nodes/%s/states/console' % self.node.uuid,
{'enabled': "false"})
self.assertEqual(202, ret.status_code)
@ -1093,8 +1099,8 @@ class TestPut(base.FunctionalTest):
expected_location)
def test_set_console_mode_bad_request(self):
with mock.patch.object(rpcapi.ConductorAPI, 'set_console_mode') \
as mock_scm:
with mock.patch.object(rpcapi.ConductorAPI,
'set_console_mode') as mock_scm:
ret = self.put_json('/nodes/%s/states/console' % self.node.uuid,
{'enabled': "invalid-value"},
expect_errors=True)
@ -1103,8 +1109,8 @@ class TestPut(base.FunctionalTest):
assert not mock_scm.called
def test_set_console_mode_bad_request_missing_parameter(self):
with mock.patch.object(rpcapi.ConductorAPI, 'set_console_mode') \
as mock_scm:
with mock.patch.object(rpcapi.ConductorAPI,
'set_console_mode') as mock_scm:
ret = self.put_json('/nodes/%s/states/console' % self.node.uuid,
{}, expect_errors=True)
self.assertEqual(400, ret.status_code)
@ -1112,8 +1118,8 @@ class TestPut(base.FunctionalTest):
assert not mock_scm.called
def test_set_console_mode_console_not_supported(self):
with mock.patch.object(rpcapi.ConductorAPI, 'set_console_mode') \
as mock_scm:
with mock.patch.object(rpcapi.ConductorAPI,
'set_console_mode') as mock_scm:
mock_scm.side_effect = exception.UnsupportedDriverExtension(
extension='console', driver='test-driver')
ret = self.put_json('/nodes/%s/states/console' % self.node.uuid,

View File

@ -76,8 +76,8 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_OFF)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_OFF
conductor_utils.node_power_action(task, states.POWER_ON)
@ -96,8 +96,8 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_ON)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_ON
conductor_utils.node_power_action(task, states.POWER_OFF)
@ -135,8 +135,8 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_ON)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_ON
self.assertRaises(exception.InvalidParameterValue,
@ -189,12 +189,12 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_ON)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_ON
with mock.patch.object(self.driver.power, 'set_power_state') \
as set_power_mock:
with mock.patch.object(self.driver.power,
'set_power_state') as set_power_mock:
conductor_utils.node_power_action(task, states.POWER_ON)
node.refresh()
@ -215,10 +215,10 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_ON)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_state_mock:
get_power_state_mock.side_effect = \
exception.InvalidParameterValue('failed getting power state')
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_state_mock:
get_power_state_mock.side_effect = (
exception.InvalidParameterValue('failed getting power state'))
self.assertRaises(exception.InvalidParameterValue,
conductor_utils.node_power_action,
@ -241,10 +241,10 @@ class NodePowerActionTestCase(base.DbTestCase):
power_state=states.POWER_OFF)
task = task_manager.TaskManager(self.context, node.uuid)
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power, 'set_power_state') \
as set_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
with mock.patch.object(self.driver.power,
'set_power_state') as set_power_mock:
get_power_mock.return_value = states.POWER_OFF
set_power_mock.side_effect = exception.IronicException()

View File

@ -224,8 +224,8 @@ class KeepAliveTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
# avoid wasting time at the event.wait()
CONF.set_override('heartbeat_interval', 0, 'conductor')
with mock.patch.object(self.dbapi, 'touch_conductor') as mock_touch:
with mock.patch.object(self.service._keepalive_evt, 'is_set') as \
mock_is_set:
with mock.patch.object(self.service._keepalive_evt,
'is_set') as mock_is_set:
mock_is_set.side_effect = [False, True]
self.service._conductor_service_record_keepalive()
mock_touch.assert_called_once_with(self.hostname)
@ -243,8 +243,8 @@ class ChangeNodePowerStateTestCase(_ServiceSetUpMixin,
power_state=states.POWER_OFF)
self._start_service()
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_OFF
self.service.change_node_power_state(self.context,
@ -298,8 +298,8 @@ class ChangeNodePowerStateTestCase(_ServiceSetUpMixin,
power_state=initial_state)
self._start_service()
with mock.patch.object(self.service, '_spawn_worker') \
as spawn_mock:
with mock.patch.object(self.service,
'_spawn_worker') as spawn_mock:
spawn_mock.side_effect = exception.NoFreeConductorWorker()
exc = self.assertRaises(messaging.rpc.ExpectedException,
@ -328,12 +328,12 @@ class ChangeNodePowerStateTestCase(_ServiceSetUpMixin,
power_state=initial_state)
self._start_service()
with mock.patch.object(self.driver.power, 'get_power_state') \
as get_power_mock:
with mock.patch.object(self.driver.power,
'get_power_state') as get_power_mock:
get_power_mock.return_value = states.POWER_OFF
with mock.patch.object(self.driver.power, 'set_power_state') \
as set_power_mock:
with mock.patch.object(self.driver.power,
'set_power_state') as set_power_mock:
new_state = states.POWER_ON
set_power_mock.side_effect = exception.PowerStateFailure(
pstate=new_state
@ -362,8 +362,8 @@ class ChangeNodePowerStateTestCase(_ServiceSetUpMixin,
power_state=initial_state)
self._start_service()
with mock.patch.object(self.driver.power, 'validate') \
as validate_mock:
with mock.patch.object(self.driver.power,
'validate') as validate_mock:
validate_mock.side_effect = exception.InvalidParameterValue(
'wrong power driver info')
@ -560,8 +560,8 @@ class VendorPassthruTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
info = {'bar': 'baz'}
self._start_service()
with mock.patch.object(self.service, '_spawn_worker') \
as spawn_mock:
with mock.patch.object(self.service,
'_spawn_worker') as spawn_mock:
spawn_mock.side_effect = exception.NoFreeConductorWorker()
exc = self.assertRaises(messaging.rpc.ExpectedException,
@ -970,8 +970,9 @@ class MiscTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
def test_validate_driver_interfaces_validation_fail(self):
node = obj_utils.create_test_node(self.context, driver='fake')
with mock.patch('ironic.drivers.modules.fake.FakeDeploy.validate') \
as deploy:
with mock.patch(
'ironic.drivers.modules.fake.FakeDeploy.validate'
) as deploy:
reason = 'fake reason'
deploy.side_effect = exception.InvalidParameterValue(reason)
ret = self.service.validate_driver_interfaces(self.context,
@ -985,8 +986,8 @@ class ConsoleTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
def test_set_console_mode_worker_pool_full(self):
node = obj_utils.create_test_node(self.context, driver='fake')
self._start_service()
with mock.patch.object(self.service, '_spawn_worker') \
as spawn_mock:
with mock.patch.object(self.service,
'_spawn_worker') as spawn_mock:
spawn_mock.side_effect = exception.NoFreeConductorWorker()
exc = self.assertRaises(messaging.rpc.ExpectedException,
@ -1045,8 +1046,8 @@ class ConsoleTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
last_error=None,
console_enabled=False)
self._start_service()
with mock.patch.object(self.driver.console, 'start_console') \
as mock_sc:
with mock.patch.object(self.driver.console,
'start_console') as mock_sc:
mock_sc.side_effect = exception.IronicException('test-error')
self.service.set_console_mode(self.context, node.uuid, True)
self.service._worker_pool.waitall()
@ -1059,8 +1060,8 @@ class ConsoleTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
last_error=None,
console_enabled=True)
self._start_service()
with mock.patch.object(self.driver.console, 'stop_console') \
as mock_sc:
with mock.patch.object(self.driver.console,
'stop_console') as mock_sc:
mock_sc.side_effect = exception.IronicException('test-error')
self.service.set_console_mode(self.context, node.uuid, False)
self.service._worker_pool.waitall()
@ -1072,8 +1073,8 @@ class ConsoleTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
node = obj_utils.create_test_node(self.context, driver='fake',
console_enabled=True)
self._start_service()
with mock.patch.object(self.driver.console, 'start_console') \
as mock_sc:
with mock.patch.object(self.driver.console,
'start_console') as mock_sc:
self.service.set_console_mode(self.context, node.uuid, True)
self.service._worker_pool.waitall()
self.assertFalse(mock_sc.called)
@ -1082,8 +1083,8 @@ class ConsoleTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
node = obj_utils.create_test_node(self.context, driver='fake',
console_enabled=False)
self._start_service()
with mock.patch.object(self.driver.console, 'stop_console') \
as mock_sc:
with mock.patch.object(self.driver.console,
'stop_console') as mock_sc:
self.service.set_console_mode(self.context, node.uuid, False)
self.service._worker_pool.waitall()
self.assertFalse(mock_sc.called)
@ -1334,8 +1335,8 @@ class UpdatePortTestCase(_ServiceSetUpMixin, tests_db_base.DbTestCase):
def test_set_boot_device(self):
node = obj_utils.create_test_node(self.context, driver='fake')
with mock.patch.object(self.driver.management, 'validate') as mock_val:
with mock.patch.object(self.driver.management, 'set_boot_device') \
as mock_sbd:
with mock.patch.object(self.driver.management,
'set_boot_device') as mock_sbd:
self.service.set_boot_device(self.context, node.uuid,
boot_devices.PXE)
mock_val.assert_called_once_with(mock.ANY)
@ -2337,14 +2338,16 @@ class ManagerSyncLocalStateTestCase(_CommonMixIn, tests_db_base.DbTestCase):
acquire_mock, get_authtoken_mock):
get_ctx_mock.return_value = self.context
mapped_mock.return_value = True
acquire_mock.side_effect = \
self._get_acquire_side_effect([self.task] * 3)
self.task.spawn_after.side_effect = \
[None, exception.NoFreeConductorWorker('error')]
acquire_mock.side_effect = self._get_acquire_side_effect(
[self.task] * 3)
self.task.spawn_after.side_effect = [
None,
exception.NoFreeConductorWorker('error')
]
# 3 nodes to be checked
get_nodeinfo_mock.return_value = \
self._get_nodeinfo_list_response([self.node] * 3)
get_nodeinfo_mock.return_value = self._get_nodeinfo_list_response(
[self.node] * 3)
self.service._sync_local_state(self.context)
@ -2379,8 +2382,8 @@ class ManagerSyncLocalStateTestCase(_CommonMixIn, tests_db_base.DbTestCase):
self.task.spawn_after.side_effect = [None, None]
# 3 nodes to be checked
get_nodeinfo_mock.return_value = \
self._get_nodeinfo_list_response([self.node] * 3)
get_nodeinfo_mock.return_value = self._get_nodeinfo_list_response(
[self.node] * 3)
self.service._sync_local_state(self.context)
@ -2409,13 +2412,13 @@ class ManagerSyncLocalStateTestCase(_CommonMixIn, tests_db_base.DbTestCase):
self.config(periodic_max_workers=1, group='conductor')
get_ctx_mock.return_value = self.context
mapped_mock.return_value = True
acquire_mock.side_effect = \
self._get_acquire_side_effect([self.task] * 3)
acquire_mock.side_effect = self._get_acquire_side_effect(
[self.task] * 3)
self.task.spawn_after.side_effect = [None] * 3
# 3 nodes to be checked
get_nodeinfo_mock.return_value = \
self._get_nodeinfo_list_response([self.node] * 3)
get_nodeinfo_mock.return_value = self._get_nodeinfo_list_response(
[self.node] * 3)
self.service._sync_local_state(self.context)

View File

@ -43,9 +43,9 @@ def mock_the_extension_manager(driver="fake", namespace="ironic.drivers"):
# instantiaing a DriverFactory class to avoid
# a real NameDispatchExtensionManager to be created
# with the real namespace.
driver_factory.DriverFactory._extension_manager = \
dispatch.NameDispatchExtensionManager('ironic.no-such-namespace',
lambda x: True)
driver_factory.DriverFactory._extension_manager = (
dispatch.NameDispatchExtensionManager('ironic.no-such-namespace',
lambda x: True))
mock_ext_mgr = driver_factory.DriverFactory()
mock_ext = mock_ext_mgr._extension_manager._load_one_plugin(
entry_point, True, [], {}, False)

View File

@ -229,8 +229,8 @@ class TestWalkVersions(base.TestCase, WalkVersionsMixin):
@mock.patch.object(WalkVersionsMixin, '_migrate_down')
def test_walk_versions_all_default(self, _migrate_up, _migrate_down,
script_directory):
script_directory.from_config().\
walk_revisions.return_value = self.versions
fc = script_directory.from_config()
fc.walk_revisions.return_value = self.versions
self.migration_api.version.return_value = None
self._walk_versions(self.engine, self.config)
@ -250,8 +250,8 @@ class TestWalkVersions(base.TestCase, WalkVersionsMixin):
@mock.patch.object(WalkVersionsMixin, '_migrate_down')
def test_walk_versions_all_false(self, _migrate_up, _migrate_down,
script_directory):
script_directory.from_config().\
walk_revisions.return_value = self.versions
fc = script_directory.from_config()
fc.walk_revisions.return_value = self.versions
self.migration_api.version.return_value = None
self._walk_versions(self.engine, self.config, downgrade=False)

View File

@ -55,8 +55,10 @@ class SqlAlchemyCustomTypesTestCase(base.DbTestCase):
'drivers': None,
'id': cdr1_id})
# Get conductor manually to test SA types in isolation from UOM.
cdr1 = sa_api.model_query(models.Conductor).filter_by(id=cdr1_id)\
.one()
cdr1 = (sa_api
.model_query(models.Conductor)
.filter_by(id=cdr1_id)
.one())
self.assertEqual([], cdr1.drivers)
# Create conductor with drivers specified.
@ -66,8 +68,10 @@ class SqlAlchemyCustomTypesTestCase(base.DbTestCase):
'drivers': drivers,
'id': cdr2_id})
# Get conductor manually to test SA types in isolation from UOM.
cdr2 = sa_api.model_query(models.Conductor).filter_by(id=cdr2_id)\
.one()
cdr2 = (sa_api
.model_query(models.Conductor)
.filter_by(id=cdr2_id)
.one())
self.assertEqual(drivers, cdr2.drivers)
def test_JSONEncodedList_type_check(self):

View File

@ -655,13 +655,13 @@ class PXEDriverTestCase(db_base.DbTestCase):
def test_lock_elevated(self):
with task_manager.acquire(self.context, self.node.uuid) as task:
with mock.patch.object(task.driver.vendor, '_continue_deploy') \
as _continue_deploy_mock:
with mock.patch.object(task.driver.vendor,
'_continue_deploy') as _cont_deploy_mock:
task.driver.vendor.vendor_passthru(task,
method='pass_deploy_info', address='123456', iqn='aaa-bbb',
key='fake-56789')
# lock elevated w/o exception
self.assertEqual(1, _continue_deploy_mock.call_count,
self.assertEqual(1, _cont_deploy_mock.call_count,
"_continue_deploy was not called once.")

View File

@ -522,8 +522,8 @@ class SSHPrivateMethodsTestCase(db_base.DbTestCase):
def close(self):
pass
with mock.patch.object(self.sshclient, 'exec_command') \
as exec_command_mock:
with mock.patch.object(self.sshclient,
'exec_command') as exec_command_mock:
exec_command_mock.return_value = (Stream(),
Stream('hello'),
Stream())
@ -549,8 +549,8 @@ class SSHPrivateMethodsTestCase(db_base.DbTestCase):
def close(self):
pass
with mock.patch.object(self.sshclient, 'exec_command') \
as exec_command_mock:
with mock.patch.object(self.sshclient,
'exec_command') as exec_command_mock:
exec_command_mock.return_value = (Stream(),
Stream('hello'),
Stream())

View File

@ -80,8 +80,8 @@ class TestChassisObject(base.DbTestCase):
dict(self.fake_chassis, uuid=new_uuid)]
expected = [mock.call(uuid), mock.call(uuid)]
with mock.patch.object(self.dbapi, 'get_chassis_by_uuid',
side_effect=returns, autospec=True) \
as mock_get_chassis:
side_effect=returns,
autospec=True) as mock_get_chassis:
c = objects.Chassis.get_by_uuid(self.context, uuid)
self.assertEqual(uuid, c.uuid)
c.refresh()

View File

@ -87,8 +87,8 @@ class TestPortObject(base.DbTestCase):
utils.get_test_port(address="c3:54:00:cf:2d:40")]
expected = [mock.call(uuid), mock.call(uuid)]
with mock.patch.object(self.dbapi, 'get_port_by_uuid',
side_effect=returns, autospec=True) \
as mock_get_port:
side_effect=returns,
autospec=True) as mock_get_port:
p = objects.Port.get_by_uuid(self.context, uuid)
self.assertEqual("52:54:00:cf:2d:31", p.address)
p.refresh()

View File

@ -47,7 +47,7 @@ commands = {posargs}
[flake8]
# E711: ignored because it is normal to use "column == None" in sqlalchemy
# TODO(yuriyz): Analyze or fix the warnings blacklisted below
ignore = E12,E111,E113,E131,E265,E711,F812,H305,H307,H405,H702,H904
ignore = E12,E111,E113,E131,E265,E711,F812,H305,H307,H405,H702
exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools,*ironic/nova*
[hacking]