Port zonemanager to Python 3

* Replace xrange() with six.moves.range()
* Replace filter() with list-comprehension to get a list on Python 3.
* get_formatted_wwn(): join byte strings with b':' instead of ':'
* ZoneManager: don't pass arguments to object.__new__()
* tests-py3.txt: add zonemanager tests

Partial-Implements: blueprint cinder-python3
Change-Id: Ia3fcd816c5afd7a08b8769fbc9d2839b70c8c3fb
This commit is contained in:
Victor Stinner 2015-11-24 17:33:37 +01:00
parent 6b6863703a
commit b2050e4a08
6 changed files with 22 additions and 11 deletions

@ -19,6 +19,7 @@
import mock
from oslo_concurrency import processutils
from six.moves import range
from cinder import exception
from cinder import test
@ -219,7 +220,7 @@ class TestCiscoFCZoneClientCLI(cli.CiscoFCZoneClientCLI, test.TestCase):
expected_num_calls = 5
expected_calls = []
for i in xrange(expected_num_calls):
for i in range(expected_num_calls):
expected_calls.append(mock.call(cmd_list, True))
self.assertEqual(expected_num_calls, run_ssh_mock.call_count)

@ -139,10 +139,10 @@ class BrcdFCSanLookupService(fc_service.FCSanLookupService):
"caller-%s", formatted_initiator_list)
LOG.debug("Lookup service:target list from "
"caller-%s", formatted_target_list)
visible_targets = filter(lambda x: x in formatted_target_list,
nsinfo)
visible_initiators = filter(lambda x: x in
formatted_initiator_list, nsinfo)
visible_targets = [x for x in nsinfo
if x in formatted_target_list]
visible_initiators = [x for x in nsinfo
if x in formatted_initiator_list]
if visible_targets:
LOG.debug("Filtered targets is: %s", visible_targets)

@ -105,7 +105,7 @@ class BrcdFCZoneDriver(fc_zone_driver.FCZoneDriver):
if len(wwn_str) != 16:
return wwn_str
else:
return ':'.join(
return b':'.join(
[wwn_str[i:i + 2] for i in range(0, len(wwn_str), 2)])
@lockutils.synchronized('brcd', 'fcfabric-', True)

@ -137,10 +137,10 @@ class CiscoFCSanLookupService(fc_service.FCSanLookupService):
formatted_initiator_list)
LOG.debug("Lookup service:target list from caller-%s",
formatted_target_list)
visible_targets = filter(lambda x: x in formatted_target_list,
nsinfo)
visible_initiators = filter(lambda x: x in
formatted_initiator_list, nsinfo)
visible_targets = [x for x in nsinfo
if x in formatted_target_list]
visible_initiators = [x for x in nsinfo
if x in formatted_initiator_list]
if visible_targets:
LOG.debug("Filtered targets is: %s", visible_targets)

@ -81,7 +81,7 @@ class ZoneManager(fc_common.FCCommon):
def __new__(class_, *args, **kwargs):
if not hasattr(class_, "_instance"):
class_._instance = object.__new__(class_, *args, **kwargs)
class_._instance = object.__new__(class_)
return class_._instance
def __init__(self, **kwargs):

@ -137,3 +137,13 @@ cinder.tests.unit.windows.test_windows
cinder.tests.unit.windows.test_windows_remotefs
cinder.tests.unit.windows.test_windows_utils
cinder.tests.unit.wsgi
cinder.tests.unit.zonemanager.test_brcd_fc_san_lookup_service
cinder.tests.unit.zonemanager.test_brcd_fc_zone_client_cli
cinder.tests.unit.zonemanager.test_brcd_fc_zone_driver
cinder.tests.unit.zonemanager.test_brcd_lookup_service
cinder.tests.unit.zonemanager.test_cisco_fc_san_lookup_service
cinder.tests.unit.zonemanager.test_cisco_fc_zone_client_cli
cinder.tests.unit.zonemanager.test_cisco_fc_zone_driver
cinder.tests.unit.zonemanager.test_cisco_lookup_service
cinder.tests.unit.zonemanager.test_fc_zone_manager
cinder.tests.unit.zonemanager.test_volume_driver