Merge "Ensure VNX unit tests don't sleep"

This commit is contained in:
Zuul 2018-10-30 18:08:39 +00:00 committed by Gerrit Code Review
commit c811de3066
8 changed files with 50 additions and 60 deletions

View File

@ -18,10 +18,8 @@ import re
from oslo_config import cfg from oslo_config import cfg
from cinder import context
from cinder import exception from cinder import exception
from cinder.objects import fields from cinder.objects import fields
from cinder import test
from cinder.tests.unit import fake_constants from cinder.tests.unit import fake_constants
from cinder.tests.unit import utils as test_utils from cinder.tests.unit import utils as test_utils
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \
@ -29,24 +27,19 @@ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \
as storops as storops
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils
from cinder.volume import configuration as conf
from cinder.volume.drivers.dell_emc.vnx import adapter from cinder.volume.drivers.dell_emc.vnx import adapter
from cinder.volume.drivers.dell_emc.vnx import client from cinder.volume.drivers.dell_emc.vnx import client
from cinder.volume.drivers.dell_emc.vnx import common from cinder.volume.drivers.dell_emc.vnx import common
from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils
class TestCommonAdapter(test.TestCase): class TestCommonAdapter(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestCommonAdapter, self).setUp() super(TestCommonAdapter, self).setUp()
self.configuration = conf.Configuration(None)
vnx_utils.init_ops(self.configuration) vnx_utils.init_ops(self.configuration)
self.configuration.san_ip = '192.168.1.1'
self.configuration.storage_vnx_authentication_type = 'global'
self.configuration.config_group = 'vnx_backend'
self.ctxt = context.get_admin_context()
@res_mock.mock_driver_input @res_mock.mock_driver_input
@res_mock.patch_common_adapter @res_mock.patch_common_adapter
@ -1427,18 +1420,14 @@ class TestCommonAdapter(test.TestCase):
common_adapter._normalize_config) common_adapter._normalize_config)
class TestISCSIAdapter(test.TestCase): class TestISCSIAdapter(test_base.TestCase):
STORAGE_PROTOCOL = common.PROTOCOL_ISCSI STORAGE_PROTOCOL = common.PROTOCOL_ISCSI
def setUp(self): def setUp(self):
super(TestISCSIAdapter, self).setUp() super(TestISCSIAdapter, self).setUp()
self.configuration = conf.Configuration(None)
vnx_utils.init_ops(self.configuration) vnx_utils.init_ops(self.configuration)
self.configuration.storage_protocol = self.STORAGE_PROTOCOL self.configuration.storage_protocol = self.STORAGE_PROTOCOL
def tearDown(self):
super(TestISCSIAdapter, self).tearDown()
@res_mock.patch_iscsi_adapter @res_mock.patch_iscsi_adapter
def test_validate_ports_iscsi(self, vnx_iscsi, mocked): def test_validate_ports_iscsi(self, vnx_iscsi, mocked):
all_iscsi_ports = vnx_iscsi.client.get_iscsi_targets() all_iscsi_ports = vnx_iscsi.client.get_iscsi_targets()
@ -1560,18 +1549,14 @@ class TestISCSIAdapter(test.TestCase):
adapter.terminate_connection_cleanup.assert_called() adapter.terminate_connection_cleanup.assert_called()
class TestFCAdapter(test.TestCase): class TestFCAdapter(test_base.TestCase):
STORAGE_PROTOCOL = common.PROTOCOL_FC STORAGE_PROTOCOL = common.PROTOCOL_FC
def setUp(self): def setUp(self):
super(TestFCAdapter, self).setUp() super(TestFCAdapter, self).setUp()
self.configuration = conf.Configuration(None)
vnx_utils.init_ops(self.configuration) vnx_utils.init_ops(self.configuration)
self.configuration.storage_protocol = self.STORAGE_PROTOCOL self.configuration.storage_protocol = self.STORAGE_PROTOCOL
def tearDown(self):
super(TestFCAdapter, self).tearDown()
@res_mock.patch_fc_adapter @res_mock.patch_fc_adapter
def test_validate_ports_fc(self, vnx_fc, mocked): def test_validate_ports_fc(self, vnx_fc, mocked):
all_fc_ports = vnx_fc.client.get_fc_targets() all_fc_ports = vnx_fc.client.get_fc_targets()

View File

@ -0,0 +1,31 @@
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
"""Common VNC test needs."""
from cinder import context
from cinder import test
from cinder.volume import configuration as conf
from cinder.volume.drivers.dell_emc.vnx import common
class TestCase(test.TestCase):
def setUp(self):
super(TestCase, self).setUp()
self.configuration = conf.Configuration(None)
self.configuration.san_ip = '192.168.1.1'
self.configuration.storage_vnx_authentication_type = 'global'
self.configuration.config_group = 'vnx_backend'
self.ctxt = context.get_admin_context()
common.DEFAULT_TIMEOUT = 0
common.INTERVAL_30_SEC = 0

View File

@ -15,18 +15,18 @@
import unittest import unittest
from cinder import exception from cinder import exception
from cinder import test
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \
as storops_ex as storops_ex
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \
as storops as storops
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils
from cinder.volume.drivers.dell_emc.vnx import client as vnx_client from cinder.volume.drivers.dell_emc.vnx import client as vnx_client
from cinder.volume.drivers.dell_emc.vnx import common as vnx_common from cinder.volume.drivers.dell_emc.vnx import common as vnx_common
class TestCondition(test.TestCase): class TestCondition(test_base.TestCase):
@res_mock.patch_client @res_mock.patch_client
def test_is_lun_io_ready_false(self, client, mocked): def test_is_lun_io_ready_false(self, client, mocked):
r = vnx_client.Condition.is_lun_io_ready(mocked['lun']) r = vnx_client.Condition.is_lun_io_ready(mocked['lun'])
@ -44,17 +44,7 @@ class TestCondition(test.TestCase):
mocked['lun']) mocked['lun'])
class TestClient(test.TestCase): class TestClient(test_base.TestCase):
def setUp(self):
super(TestClient, self).setUp()
self.origin_timeout = vnx_common.DEFAULT_TIMEOUT
vnx_common.DEFAULT_TIMEOUT = 0
vnx_common.INTERVAL_30_SEC = 0
def tearDown(self):
super(TestClient, self).tearDown()
vnx_common.DEFAULT_TIMEOUT = self.origin_timeout
vnx_common.INTERVAL_30_SEC = 30
@res_mock.patch_client @res_mock.patch_client
def test_create_lun(self, client, mocked): def test_create_lun(self, client, mocked):

View File

@ -16,15 +16,15 @@
import mock import mock
from cinder import exception from cinder import exception
from cinder import test
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \
as storops as storops
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.volume.drivers.dell_emc.vnx import client from cinder.volume.drivers.dell_emc.vnx import client
from cinder.volume.drivers.dell_emc.vnx import common from cinder.volume.drivers.dell_emc.vnx import common
class TestExtraSpecs(test.TestCase): class TestExtraSpecs(test_base.TestCase):
def test_valid_extra_spec(self): def test_valid_extra_spec(self):
extra_spec = { extra_spec = {
'provisioning:type': 'deduplicated', 'provisioning:type': 'deduplicated',
@ -186,7 +186,7 @@ class FakeConfiguration(object):
self.replication_device = [] self.replication_device = []
class TestReplicationDeviceList(test.TestCase): class TestReplicationDeviceList(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestReplicationDeviceList, self).setUp() super(TestReplicationDeviceList, self).setUp()
self.configuration = FakeConfiguration() self.configuration = FakeConfiguration()
@ -244,7 +244,7 @@ class TestReplicationDeviceList(test.TestCase):
self.assertIn('array_id_1', backend_ids) self.assertIn('array_id_1', backend_ids)
class TestVNXMirrorView(test.TestCase): class TestVNXMirrorView(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestVNXMirrorView, self).setUp() super(TestVNXMirrorView, self).setUp()
self.primary_client = mock.create_autospec(client.Client) self.primary_client = mock.create_autospec(client.Client)

View File

@ -15,15 +15,13 @@
import mock import mock
from cinder import test from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.volume import configuration as conf
from cinder.volume.drivers.dell_emc.vnx import driver from cinder.volume.drivers.dell_emc.vnx import driver
class TestVNXDriver(test.TestCase): class TestVNXDriver(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestVNXDriver, self).setUp() super(TestVNXDriver, self).setUp()
self.configuration = conf.Configuration(None)
self.fc_adapter_patcher = mock.patch( self.fc_adapter_patcher = mock.patch(
'cinder.volume.drivers.dell_emc.vnx.adapter.FCAdapter', 'cinder.volume.drivers.dell_emc.vnx.adapter.FCAdapter',
autospec=True) autospec=True)

View File

@ -15,24 +15,18 @@
import mock import mock
from cinder import context
from cinder.objects import fields from cinder.objects import fields
from cinder import test
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils
from cinder.volume import configuration as conf
from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils
class TestReplicationAdapter(test.TestCase): class TestReplicationAdapter(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestReplicationAdapter, self).setUp() super(TestReplicationAdapter, self).setUp()
self.configuration = conf.Configuration(None)
vnx_utils.init_ops(self.configuration) vnx_utils.init_ops(self.configuration)
self.configuration.san_ip = '192.168.1.1'
self.configuration.storage_vnx_authentication_type = 'global'
self.ctxt = context.get_admin_context()
@utils.patch_group_specs({ @utils.patch_group_specs({
'consistent_group_replication_enabled': '<is> True'}) 'consistent_group_replication_enabled': '<is> True'})

View File

@ -17,14 +17,14 @@ import taskflow.engines
from taskflow.patterns import linear_flow from taskflow.patterns import linear_flow
from taskflow.types import failure from taskflow.types import failure
from cinder import test
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \
as vnx_ex as vnx_ex
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
import cinder.volume.drivers.dell_emc.vnx.taskflows as vnx_taskflow import cinder.volume.drivers.dell_emc.vnx.taskflows as vnx_taskflow
class TestTaskflow(test.TestCase): class TestTaskflow(test_base.TestCase):
def setUp(self): def setUp(self):
super(TestTaskflow, self).setUp() super(TestTaskflow, self).setUp()
self.work_flow = linear_flow.Flow('test_task') self.work_flow = linear_flow.Flow('test_task')

View File

@ -16,12 +16,12 @@
import mock import mock
from cinder import exception from cinder import exception
from cinder import test
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_exception \
as storops_ex as storops_ex
from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \ from cinder.tests.unit.volume.drivers.dell_emc.vnx import fake_storops \
as storops as storops
from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock from cinder.tests.unit.volume.drivers.dell_emc.vnx import res_mock
from cinder.tests.unit.volume.drivers.dell_emc.vnx import test_base
from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils as ut_utils from cinder.tests.unit.volume.drivers.dell_emc.vnx import utils as ut_utils
from cinder.volume.drivers.dell_emc.vnx import common from cinder.volume.drivers.dell_emc.vnx import common
from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils from cinder.volume.drivers.dell_emc.vnx import utils as vnx_utils
@ -35,15 +35,7 @@ class FakeDriver(object):
return True return True
class TestUtils(test.TestCase): class TestUtils(test_base.TestCase):
def setUp(self):
super(TestUtils, self).setUp()
self.origin_timeout = common.DEFAULT_TIMEOUT
common.DEFAULT_TIMEOUT = 0.05
def tearDown(self):
super(TestUtils, self).tearDown()
common.DEFAULT_TIMEOUT = self.origin_timeout
def test_wait_until(self): def test_wait_until(self):
mock_testmethod = mock.Mock(return_value=True) mock_testmethod = mock.Mock(return_value=True)