Remove useless logging from unit tests

It has been discussed that there really isn't much point in having
unit tests making any kind of logger calls. Some usage has already
been cleaned up. This patch removes the remaining instances of log
calls under the cinder/tests directory.

Also cleaned up a lot of cases where the source files would import
oslo_logging and declare a LOG variable which was never actually
used.

Leaving logging in the cinder/tests/unit/integrated tree for now
until a plan is decided as to what to do with all of these type of
tests.

Added hacking check to prevent new instances from slipping by code
reviews.

Change-Id: If177394486d5c92fa5466cd3825b15d30cf5fb18
This commit is contained in:
Sean McGinnis 2015-07-01 15:14:57 -05:00 committed by Walter A. Boring IV (hemna)
parent 409bc28183
commit 46e1f1741d
57 changed files with 54 additions and 336 deletions

View File

@ -25,6 +25,7 @@ Cinder Specific Commandments
- [C306] timeutils.strtime() must not be used (deprecated). - [C306] timeutils.strtime() must not be used (deprecated).
- [C307] LOG.warn is deprecated. Enforce use of LOG.warning. - [C307] LOG.warn is deprecated. Enforce use of LOG.warning.
- [C308] timeutils.isotime() must not be used (deprecated). - [C308] timeutils.isotime() must not be used (deprecated).
- [C309] Unit tests should not perform logging.
General General
------- -------

View File

@ -57,6 +57,8 @@ log_translation_LE = re.compile(
r"(.)*LOG\.(exception|error)\(\s*(_\(|'|\")") r"(.)*LOG\.(exception|error)\(\s*(_\(|'|\")")
log_translation_LW = re.compile( log_translation_LW = re.compile(
r"(.)*LOG\.(warning|warn)\(\s*(_\(|'|\")") r"(.)*LOG\.(warning|warn)\(\s*(_\(|'|\")")
logging_instance = re.compile(
r"(.)*LOG\.(warning|info|debug|error|exception)\(")
class BaseASTChecker(ast.NodeVisitor): class BaseASTChecker(ast.NodeVisitor):
@ -307,6 +309,17 @@ def check_timeutils_isotime(logical_line):
yield(0, msg) yield(0, msg)
def no_test_log(logical_line, filename, noqa):
if "cinder/tests" not in filename or noqa:
return
# Skip the "integrated" tests for now
if "cinder/tests/unit/integrated" in filename:
return
msg = "C309: Unit tests should not perform logging."
if logging_instance.match(logical_line):
yield (0, msg)
def factory(register): def factory(register):
register(no_vi_headers) register(no_vi_headers)
register(no_translate_debug_logs) register(no_translate_debug_logs)
@ -324,3 +337,4 @@ def factory(register):
register(check_no_contextlib_nested) register(check_no_contextlib_nested)
register(no_log_warn) register(no_log_warn)
register(dict_constructor_with_list_copy) register(dict_constructor_with_list_copy)
register(no_test_log)

View File

@ -21,7 +21,6 @@ import json
from xml.dom import minidom from xml.dom import minidom
import mock import mock
from oslo_log import log as logging
import webob import webob
from cinder.consistencygroup import api as consistencygroupAPI from cinder.consistencygroup import api as consistencygroupAPI
@ -34,9 +33,6 @@ from cinder.tests.unit import utils
import cinder.volume import cinder.volume
LOG = logging.getLogger(__name__)
class CgsnapshotsAPITestCase(test.TestCase): class CgsnapshotsAPITestCase(test.TestCase):
"""Test Case for cgsnapshots API.""" """Test Case for cgsnapshots API."""
@ -76,7 +72,6 @@ class CgsnapshotsAPITestCase(test.TestCase):
consistencygroup_id)['id'] consistencygroup_id)['id']
cgsnapshot_id = self._create_cgsnapshot( cgsnapshot_id = self._create_cgsnapshot(
consistencygroup_id=consistencygroup_id) consistencygroup_id=consistencygroup_id)
LOG.debug('Created cgsnapshot with id %s' % cgsnapshot_id)
req = webob.Request.blank('/v2/fake/cgsnapshots/%s' % req = webob.Request.blank('/v2/fake/cgsnapshots/%s' %
cgsnapshot_id) cgsnapshot_id)
req.method = 'GET' req.method = 'GET'
@ -364,7 +359,6 @@ class CgsnapshotsAPITestCase(test.TestCase):
res = req.get_response(fakes.wsgi_app()) res = req.get_response(fakes.wsgi_app())
res_dict = json.loads(res.body) res_dict = json.loads(res.body)
LOG.info(res_dict)
self.assertEqual(res.status_int, 202) self.assertEqual(res.status_int, 202)
self.assertIn('id', res_dict['cgsnapshot']) self.assertIn('id', res_dict['cgsnapshot'])

View File

@ -16,7 +16,6 @@
import datetime import datetime
from lxml import etree from lxml import etree
from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
import webob.exc import webob.exc
@ -26,7 +25,6 @@ from cinder import db
from cinder import test from cinder import test
LOG = logging.getLogger(__name__)
created_time = datetime.datetime(2012, 11, 14, 1, 20, 41, 95099) created_time = datetime.datetime(2012, 11, 14, 1, 20, 41, 95099)
curr_time = datetime.datetime(2013, 7, 3, 0, 0, 1) curr_time = datetime.datetime(2013, 7, 3, 0, 0, 1)

View File

@ -20,7 +20,6 @@ Tests for volume transfer code.
import json import json
from xml.dom import minidom from xml.dom import minidom
from oslo_log import log as logging
import webob import webob
from cinder.api.contrib import volume_transfer from cinder.api.contrib import volume_transfer
@ -32,9 +31,6 @@ from cinder.tests.unit.api import fakes
import cinder.transfer import cinder.transfer
LOG = logging.getLogger(__name__)
class VolumeTransferAPITestCase(test.TestCase): class VolumeTransferAPITestCase(test.TestCase):
"""Test Case for transfers API.""" """Test Case for transfers API."""
@ -71,7 +67,6 @@ class VolumeTransferAPITestCase(test.TestCase):
def test_show_transfer(self): def test_show_transfer(self):
volume_id = self._create_volume(size=5) volume_id = self._create_volume(size=5)
transfer = self._create_transfer(volume_id) transfer = self._create_transfer(volume_id)
LOG.debug('Created transfer with id %s' % transfer)
req = webob.Request.blank('/v2/fake/os-volume-transfer/%s' % req = webob.Request.blank('/v2/fake/os-volume-transfer/%s' %
transfer['id']) transfer['id'])
req.method = 'GET' req.method = 'GET'
@ -269,7 +264,6 @@ class VolumeTransferAPITestCase(test.TestCase):
res = req.get_response(fakes.wsgi_app()) res = req.get_response(fakes.wsgi_app())
res_dict = json.loads(res.body) res_dict = json.loads(res.body)
LOG.info(res_dict)
self.assertEqual(res.status_int, 202) self.assertEqual(res.status_int, 202)
self.assertIn('id', res_dict['transfer']) self.assertIn('id', res_dict['transfer'])

View File

@ -13,8 +13,6 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from oslo_log import log as logging
from cinder.api.openstack import wsgi from cinder.api.openstack import wsgi
from cinder.api.v1 import router from cinder.api.v1 import router
from cinder.api.v1 import snapshots from cinder.api.v1 import snapshots
@ -24,9 +22,6 @@ from cinder import test
from cinder.tests.unit.api import fakes from cinder.tests.unit.api import fakes
LOG = logging.getLogger(__name__)
class FakeController(object): class FakeController(object):
def __init__(self, ext_mgr=None): def __init__(self, ext_mgr=None):
self.ext_mgr = ext_mgr self.ext_mgr = ext_mgr

View File

@ -15,7 +15,6 @@
from lxml import etree from lxml import etree
import mock import mock
from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
import webob import webob
@ -32,8 +31,6 @@ from cinder.tests.unit import fake_volume
from cinder import volume from cinder import volume
LOG = logging.getLogger(__name__)
UUID = '00000000-0000-0000-0000-000000000001' UUID = '00000000-0000-0000-0000-000000000001'
INVALID_UUID = '00000000-0000-0000-0000-000000000002' INVALID_UUID = '00000000-0000-0000-0000-000000000002'

View File

@ -15,7 +15,6 @@
from lxml import etree from lxml import etree
import mock import mock
from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
import webob import webob
@ -32,8 +31,6 @@ from cinder.tests.unit import fake_volume
from cinder import volume from cinder import volume
LOG = logging.getLogger(__name__)
UUID = '00000000-0000-0000-0000-000000000001' UUID = '00000000-0000-0000-0000-000000000001'
INVALID_UUID = '00000000-0000-0000-0000-000000000002' INVALID_UUID = '00000000-0000-0000-0000-000000000002'

View File

@ -10,11 +10,6 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from oslo_log import log as logging
LOG = logging.getLogger(__name__)
class FakeBrickLVM(object): class FakeBrickLVM(object):
"""Logs and records calls, for unit tests.""" """Logs and records calls, for unit tests."""

View File

@ -14,15 +14,12 @@
# under the License. # under the License.
from mox3 import mox from mox3 import mox
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from cinder.brick.local_dev import lvm as brick from cinder.brick.local_dev import lvm as brick
from cinder import exception from cinder import exception
from cinder import test from cinder import test
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
LOG = logging.getLogger(__name__)
def create_configuration(): def create_configuration():
configuration = mox.MockObject(conf.Configuration) configuration = mox.MockObject(conf.Configuration)

View File

@ -18,7 +18,6 @@
import datetime import datetime
import uuid import uuid
from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
from cinder import context from cinder import context
@ -30,9 +29,6 @@ from cinder import test
from oslo_db.sqlalchemy import utils as sqlalchemyutils from oslo_db.sqlalchemy import utils as sqlalchemyutils
LOG = logging.getLogger(__name__)
class PurgeDeletedTest(test.TestCase): class PurgeDeletedTest(test.TestCase):
def setUp(self): def setUp(self):

View File

@ -19,8 +19,6 @@
import time import time
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
from cinder import exception from cinder import exception
@ -28,9 +26,6 @@ from cinder import test
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
def fake_qos_specs_get_by_name(context, name, session=None, inactive=False): def fake_qos_specs_get_by_name(context, name, session=None, inactive=False):
pass pass

View File

@ -15,8 +15,6 @@
"""Tests for transfers table.""" """Tests for transfers table."""
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
from cinder import exception from cinder import exception
@ -24,9 +22,6 @@ from cinder import test
from cinder.tests.unit import utils from cinder.tests.unit import utils
LOG = logging.getLogger(__name__)
class TransfersTableTestCase(test.TestCase): class TransfersTableTestCase(test.TestCase):
"""Test case for transfers model.""" """Test case for transfers model."""

View File

@ -12,18 +12,12 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from oslo_log import log as logging
from cinder.i18n import _LE
from cinder.tests.unit.brick import fake_lvm from cinder.tests.unit.brick import fake_lvm
from cinder.volume import driver from cinder.volume import driver
from cinder.volume.drivers import lvm from cinder.volume.drivers import lvm
from cinder.zonemanager import utils as fczm_utils from cinder.zonemanager import utils as fczm_utils
LOG = logging.getLogger(__name__)
class FakeISCSIDriver(lvm.LVMISCSIDriver): class FakeISCSIDriver(lvm.LVMISCSIDriver):
"""Logs calls instead of executing.""" """Logs calls instead of executing."""
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
@ -58,7 +52,6 @@ class FakeISCSIDriver(lvm.LVMISCSIDriver):
@staticmethod @staticmethod
def fake_execute(cmd, *_args, **_kwargs): def fake_execute(cmd, *_args, **_kwargs):
"""Execute that simply logs the command.""" """Execute that simply logs the command."""
LOG.debug("FAKE ISCSI: %s", cmd)
return (None, None) return (None, None)
@ -77,7 +70,6 @@ class FakeISERDriver(FakeISCSIDriver):
@staticmethod @staticmethod
def fake_execute(cmd, *_args, **_kwargs): def fake_execute(cmd, *_args, **_kwargs):
"""Execute that simply logs the command.""" """Execute that simply logs the command."""
LOG.debug("FAKE ISER: %s", cmd)
return (None, None) return (None, None)
@ -134,7 +126,6 @@ class LoggingVolumeDriver(driver.VolumeDriver):
self.log_action('clear_volume', volume) self.log_action('clear_volume', volume)
def local_path(self, volume): def local_path(self, volume):
LOG.error(_LE("local_path not implemented"))
raise NotImplementedError() raise NotImplementedError()
def ensure_export(self, context, volume): def ensure_export(self, context, volume):
@ -161,12 +152,10 @@ class LoggingVolumeDriver(driver.VolumeDriver):
@staticmethod @staticmethod
def log_action(action, parameters): def log_action(action, parameters):
"""Logs the command.""" """Logs the command."""
LOG.debug("LoggingVolumeDriver: %s" % (action))
log_dictionary = {} log_dictionary = {}
if parameters: if parameters:
log_dictionary = dict(parameters) log_dictionary = dict(parameters)
log_dictionary['action'] = action log_dictionary['action'] = action
LOG.debug("LoggingVolumeDriver: %s" % (log_dictionary))
LoggingVolumeDriver._LOGS.append(log_dictionary) LoggingVolumeDriver._LOGS.append(log_dictionary)
@staticmethod @staticmethod

View File

@ -17,14 +17,10 @@
import re import re
from eventlet import greenthread from eventlet import greenthread
from oslo_concurrency import processutils
from oslo_log import log as logging
import six import six
from cinder import utils from cinder import utils
LOG = logging.getLogger(__name__)
_fake_execute_repliers = [] _fake_execute_repliers = []
_fake_execute_log = [] _fake_execute_log = []
@ -68,7 +64,6 @@ def fake_execute(*cmd_parts, **kwargs):
run_as_root = kwargs.get('run_as_root', False) run_as_root = kwargs.get('run_as_root', False)
cmd_str = ' '.join(str(part) for part in cmd_parts) cmd_str = ' '.join(str(part) for part in cmd_parts)
LOG.debug("Faking execution of cmd (subprocess): %s", cmd_str)
_fake_execute_log.append(cmd_str) _fake_execute_log.append(cmd_str)
reply_handler = fake_execute_default_reply_handler reply_handler = fake_execute_default_reply_handler
@ -76,28 +71,19 @@ def fake_execute(*cmd_parts, **kwargs):
for fake_replier in _fake_execute_repliers: for fake_replier in _fake_execute_repliers:
if re.match(fake_replier[0], cmd_str): if re.match(fake_replier[0], cmd_str):
reply_handler = fake_replier[1] reply_handler = fake_replier[1]
LOG.debug('Faked command matched %s' % fake_replier[0])
break break
if isinstance(reply_handler, six.string_types): if isinstance(reply_handler, six.string_types):
# If the reply handler is a string, return it as stdout # If the reply handler is a string, return it as stdout
reply = reply_handler, '' reply = reply_handler, ''
else: else:
try: # Alternative is a function, so call it
# Alternative is a function, so call it reply = reply_handler(cmd_parts,
reply = reply_handler(cmd_parts, process_input=process_input,
process_input=process_input, delay_on_retry=delay_on_retry,
delay_on_retry=delay_on_retry, attempts=attempts,
attempts=attempts, run_as_root=run_as_root,
run_as_root=run_as_root, check_exit_code=check_exit_code)
check_exit_code=check_exit_code)
except processutils.ProcessExecutionError as e:
LOG.debug('Faked command raised an exception %s', e)
raise
LOG.debug("Reply to faked command is stdout='%(stdout)s' "
"stderr='%(stderr)s'" % {'stdout': reply[0],
'stderr': reply[1]})
# Replicate the sleep call in the real function # Replicate the sleep call in the real function
greenthread.sleep(0) greenthread.sleep(0)

View File

@ -20,15 +20,10 @@ import copy
import datetime import datetime
import uuid import uuid
from oslo_log import log as logging
from cinder import exception from cinder import exception
import cinder.image.glance import cinder.image.glance
LOG = logging.getLogger(__name__)
class _FakeImageService(object): class _FakeImageService(object):
"""Mock (fake) image service for unit testing.""" """Mock (fake) image service for unit testing."""
@ -163,8 +158,6 @@ class _FakeImageService(object):
image = self.images.get(str(image_id)) image = self.images.get(str(image_id))
if image: if image:
return copy.deepcopy(image) return copy.deepcopy(image)
LOG.warning('Unable to find image id %s. Have images: %s',
image_id, self.images)
raise exception.ImageNotFound(image_id=image_id) raise exception.ImageNotFound(image_id=image_id)
def create(self, context, metadata, data=None): def create(self, context, metadata, data=None):

View File

@ -1,4 +1,3 @@
# Copyright 2010 United States Government as represented by the # Copyright 2010 United States Government as represented by the
# Administrator of the National Aeronautics and Space Administration. # Administrator of the National Aeronautics and Space Administration.
# All Rights Reserved. # All Rights Reserved.
@ -20,7 +19,6 @@ Tests For Scheduler
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
@ -266,9 +264,7 @@ class SchedulerManagerTestCase(test.TestCase):
'schedule_create_consistencygroup') as mock_cg: 'schedule_create_consistencygroup') as mock_cg:
original_driver = self.manager.driver original_driver = self.manager.driver
self.manager.driver = filter_scheduler.FilterScheduler self.manager.driver = filter_scheduler.FilterScheduler
LOG = logging.getLogger('cinder.scheduler.manager') LOG = self.mock_object(manager, 'LOG')
self.stubs.Set(LOG, 'error', mock.Mock())
self.stubs.Set(LOG, 'exception', mock.Mock())
self.stubs.Set(db, 'consistencygroup_update', mock.Mock()) self.stubs.Set(db, 'consistencygroup_update', mock.Mock())
ex = exception.CinderException('test') ex = exception.CinderException('test')

View File

@ -21,7 +21,6 @@ try:
from unittest import mock from unittest import mock
except ImportError: except ImportError:
import mock import mock
from oslo_log import log as logging
from oslo_serialization import jsonutils from oslo_serialization import jsonutils
from oslo_utils import units from oslo_utils import units
import six import six
@ -34,8 +33,6 @@ from cinder import test
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
import cinder.volume.drivers.blockbridge as bb import cinder.volume.drivers.blockbridge as bb
LOG = logging.getLogger(__name__)
DEFAULT_POOL_NAME = "OpenStack" DEFAULT_POOL_NAME = "OpenStack"
DEFAULT_POOL_QUERY = "+openstack" DEFAULT_POOL_QUERY = "+openstack"

View File

@ -13,7 +13,6 @@
# under the License. # under the License.
import mock import mock
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import exception from cinder import exception
@ -22,12 +21,8 @@ from cinder.volume.drivers.dell import dell_storagecenter_api
from cinder.volume.drivers.dell import dell_storagecenter_fc from cinder.volume.drivers.dell import dell_storagecenter_fc
LOG = logging.getLogger(__name__)
# We patch these here as they are used by every test to keep # We patch these here as they are used by every test to keep
# from trying to contact a Dell Storage Center. # from trying to contact a Dell Storage Center.
@mock.patch.object(dell_storagecenter_api.StorageCenterApi, @mock.patch.object(dell_storagecenter_api.StorageCenterApi,
'__init__', '__init__',
return_value=None) return_value=None)

View File

@ -12,7 +12,9 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from oslo_log import log as logging import uuid
import mock
from cinder import context from cinder import context
from cinder import exception from cinder import exception
@ -21,17 +23,9 @@ from cinder.volume.drivers.dell import dell_storagecenter_api
from cinder.volume.drivers.dell import dell_storagecenter_iscsi from cinder.volume.drivers.dell import dell_storagecenter_iscsi
from cinder.volume import volume_types from cinder.volume import volume_types
import mock
import uuid
LOG = logging.getLogger(__name__)
# We patch these here as they are used by every test to keep # We patch these here as they are used by every test to keep
# from trying to contact a Dell Storage Center. # from trying to contact a Dell Storage Center.
@mock.patch.object(dell_storagecenter_api.StorageCenterApi, @mock.patch.object(dell_storagecenter_api.StorageCenterApi,
'__init__', '__init__',
return_value=None) return_value=None)

View File

@ -13,24 +13,18 @@
# under the License. # under the License.
import ddt import ddt
from oslo_log import log as logging import mock
from requests import models
import uuid
from cinder import context from cinder import context
from cinder import exception from cinder import exception
from cinder import test from cinder import test
from cinder.volume.drivers.dell import dell_storagecenter_api from cinder.volume.drivers.dell import dell_storagecenter_api
import mock
from requests import models
import uuid
LOG = logging.getLogger(__name__)
# We patch these here as they are used by every test to keep # We patch these here as they are used by every test to keep
# from trying to contact a Dell Storage Center. # from trying to contact a Dell Storage Center.
@ddt.ddt @ddt.ddt
@mock.patch.object(dell_storagecenter_api.StorageCenterApi, @mock.patch.object(dell_storagecenter_api.StorageCenterApi,
'__init__', '__init__',

View File

@ -16,7 +16,6 @@
import collections import collections
import mock import mock
from oslo_log import log as logging
from oslo_utils import importutils from oslo_utils import importutils
from oslo_utils import timeutils from oslo_utils import timeutils
@ -71,9 +70,6 @@ sys.modules['drbdmanage.exceptions'] = collections.namedtuple(
from cinder.volume.drivers import drbdmanagedrv from cinder.volume.drivers import drbdmanagedrv
LOG = logging.getLogger(__name__)
def create_configuration(object): def create_configuration(object):
configuration = mock.MockObject(conf.Configuration) configuration = mock.MockObject(conf.Configuration)
configuration.san_is_local = False configuration.san_is_local = False

View File

@ -20,7 +20,6 @@ import time
from xml.dom import minidom from xml.dom import minidom
import mock import mock
from oslo_log import log as logging
from oslo_service import loopingcall from oslo_service import loopingcall
from oslo_utils import units from oslo_utils import units
import six import six
@ -39,7 +38,6 @@ from cinder.volume.drivers.emc import emc_vmax_utils
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
CINDER_EMC_CONFIG_DIR = '/etc/cinder/' CINDER_EMC_CONFIG_DIR = '/etc/cinder/'

View File

@ -15,16 +15,12 @@
import mock import mock
from oslo_log import log as logging
import six
from cinder import exception from cinder import exception
from cinder import test from cinder import test
from cinder.volume.drivers.emc import xtremio from cinder.volume.drivers.emc import xtremio
LOG = logging.getLogger(__name__)
typ2id = {'volumes': 'vol-id', typ2id = {'volumes': 'vol-id',
'snapshots': 'vol-id', 'snapshots': 'vol-id',
'initiators': 'initiator-id', 'initiators': 'initiator-id',
@ -149,8 +145,6 @@ def xms_request(object_type='volumes', request_typ='GET', data=None,
del xms_data[object_type][data['index']] del xms_data[object_type][data['index']]
del xms_data[object_type][data[typ2id[object_type]][1]] del xms_data[object_type][data[typ2id[object_type]][1]]
else: else:
LOG.error('Trying to delete a missing object %s',
six.text_type(obj_key))
raise exception.NotFound() raise exception.NotFound()
elif request_typ == 'PUT': elif request_typ == 'PUT':
if obj_key in xms_data[object_type]: if obj_key in xms_data[object_type]:
@ -160,8 +154,6 @@ def xms_request(object_type='volumes', request_typ='GET', data=None,
if key: if key:
xms_data[object_type][data[key]] = obj xms_data[object_type][data[key]] = obj
else: else:
LOG.error('Trying to update a missing object %s',
six.text_type(obj_key))
raise exception.NotFound() raise exception.NotFound()

View File

@ -18,7 +18,6 @@ import time
from eventlet import greenthread from eventlet import greenthread
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
import paramiko import paramiko
import six import six
@ -30,8 +29,6 @@ from cinder import utils
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
from cinder.volume.drivers import eqlx from cinder.volume.drivers import eqlx
LOG = logging.getLogger(__name__)
class DellEQLSanISCSIDriverTestCase(test.TestCase): class DellEQLSanISCSIDriverTestCase(test.TestCase):

View File

@ -19,7 +19,6 @@ import tempfile
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import context from cinder import context
@ -31,8 +30,6 @@ from cinder.volume.drivers.ibm import gpfs
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
CONF = cfg.CONF CONF = cfg.CONF

View File

@ -12,6 +12,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
import ddt
import textwrap import textwrap
import mock import mock
@ -21,6 +22,7 @@ from cinder.hacking import checks
from cinder import test from cinder import test
@ddt.ddt
class HackingTestCase(test.TestCase): class HackingTestCase(test.TestCase):
"""This class tests the hacking checks in cinder.hacking.checks """This class tests the hacking checks in cinder.hacking.checks
@ -346,3 +348,18 @@ class HackingTestCase(test.TestCase):
self.assertEqual(0, len(list(checks.dict_constructor_with_list_copy( self.assertEqual(0, len(list(checks.dict_constructor_with_list_copy(
" self._render_dict(xml, data_el, data.__dict__)")))) " self._render_dict(xml, data_el, data.__dict__)"))))
@ddt.unpack
@ddt.data(
(1, 'LOG.info', "cinder/tests/unit/fake.py", False),
(1, 'LOG.warning', "cinder/tests/fake.py", False),
(1, 'LOG.error', "cinder/tests/fake.py", False),
(1, 'LOG.exception', "cinder/tests/fake.py", False),
(1, 'LOG.debug', "cinder/tests/fake.py", False),
(0, 'LOG.info.assert_called_once_with', "cinder/tests/fake.py", False),
(0, 'some.LOG.error.call', "cinder/tests/fake.py", False),
(0, 'LOG.warning', "cinder/tests/unit/fake.py", True),
(0, 'LOG.warning', "cinder/tests/unit/integrated/fake.py", False))
def test_no_test_log(self, first, second, third, fourth):
self.assertEqual(first, len(list(checks.no_test_log(
"%s('arg')" % second, third, fourth))))

View File

@ -17,7 +17,6 @@
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import test from cinder import test
from cinder import utils from cinder import utils
@ -26,8 +25,6 @@ from cinder.volume.drivers.hitachi import hnas_nfs as nfs
CONF = cfg.CONF CONF = cfg.CONF
LOG = logging.getLogger(__name__)
HNAS_RESULT1 = "\n\ HNAS_RESULT1 = "\n\
FS ID FS Label FS Permanent ID EVS ID EVS Label\n\ FS ID FS Label FS Permanent ID EVS ID EVS Label\n\
----- ----------- ------------------ ------ ---------\n\ ----- ----------- ------------------ ------ ---------\n\
@ -271,8 +268,6 @@ UTILS_EXEC_OUT = ["output: test_cmd", ""]
def m_run_cmd(*args, **kargs): def m_run_cmd(*args, **kargs):
LOG.debug(args)
LOG.debug(HNAS_CMDS.get(args))
return HNAS_CMDS.get(args) return HNAS_CMDS.get(args)

View File

@ -22,7 +22,6 @@ import os
import tempfile import tempfile
import mock import mock
from oslo_log import log as logging
import six import six
from cinder import exception from cinder import exception
@ -31,8 +30,6 @@ from cinder.volume import configuration as conf
from cinder.volume.drivers.hitachi import hnas_iscsi as iscsi from cinder.volume.drivers.hitachi import hnas_iscsi as iscsi
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
HNASCONF = """<?xml version="1.0" encoding="UTF-8" ?> HNASCONF = """<?xml version="1.0" encoding="UTF-8" ?>
<config> <config>
<hnas_cmd>ssc</hnas_cmd> <hnas_cmd>ssc</hnas_cmd>
@ -104,24 +101,16 @@ class SimulatedHnasBackend(object):
self.connections = [] self.connections = []
def deleteVolume(self, name): def deleteVolume(self, name):
LOG.info("delVolume: name %s", name)
volume = self.getVolume(name) volume = self.getVolume(name)
if volume: if volume:
LOG.info("deleteVolume: deleted name %s provider %s",
volume['name'], volume['provider_location'])
self.volumes.remove(volume) self.volumes.remove(volume)
return True return True
else: else:
return False return False
def deleteVolumebyProvider(self, provider): def deleteVolumebyProvider(self, provider):
LOG.info("delVolumeP: provider %s", provider)
volume = self.getVolumebyProvider(provider) volume = self.getVolumebyProvider(provider)
if volume: if volume:
LOG.info("deleteVolumeP: deleted name %s provider %s",
volume['name'], volume['provider_location'])
self.volumes.remove(volume) self.volumes.remove(volume)
return True return True
else: else:
@ -131,39 +120,20 @@ class SimulatedHnasBackend(object):
return self.volumes return self.volumes
def getVolume(self, name): def getVolume(self, name):
LOG.info("getVolume: find by name %s", name)
if self.volumes: if self.volumes:
for volume in self.volumes: for volume in self.volumes:
if str(volume['name']) == name: if str(volume['name']) == name:
LOG.info("getVolume: found name %s provider %s",
volume['name'], volume['provider_location'])
return volume return volume
else:
LOG.info("getVolume: no volumes")
LOG.info("getVolume: not found")
return None return None
def getVolumebyProvider(self, provider): def getVolumebyProvider(self, provider):
LOG.info("getVolumeP: find by provider %s", provider)
if self.volumes: if self.volumes:
for volume in self.volumes: for volume in self.volumes:
if str(volume['provider_location']) == provider: if str(volume['provider_location']) == provider:
LOG.info("getVolumeP: found name %s provider %s",
volume['name'], volume['provider_location'])
return volume return volume
else:
LOG.info("getVolumeP: no volumes")
LOG.info("getVolumeP: not found")
return None return None
def createVolume(self, name, provider, sizeMiB, comment): def createVolume(self, name, provider, sizeMiB, comment):
LOG.info("createVolume: name %s provider %s comment %s",
name, provider, comment)
new_vol = {'additionalStates': [], new_vol = {'additionalStates': [],
'adminSpace': {'freeMiB': 0, 'adminSpace': {'freeMiB': 0,
'rawReservedMiB': 384, 'rawReservedMiB': 384,
@ -203,10 +173,8 @@ class SimulatedHnasBackend(object):
def delete_lu(self, cmd, ip0, user, pw, hdp, lun): def delete_lu(self, cmd, ip0, user, pw, hdp, lun):
_out = "" _out = ""
id = "myID" id = "myID"
LOG.info("Delete_Lu: check lun %s id %s", lun, id)
if self.deleteVolumebyProvider(id + '.' + str(lun)): self.deleteVolumebyProvider(id + '.' + str(lun))
LOG.warning("Delete_Lu: failed to delete lun %s id %s", lun, id)
return _out return _out
def create_dup(self, cmd, ip0, user, pw, src_lun, hdp, size, name): def create_dup(self, cmd, ip0, user, pw, src_lun, hdp, size, name):
@ -214,7 +182,6 @@ class SimulatedHnasBackend(object):
(self.start_lun, size)) (self.start_lun, size))
id = name id = name
LOG.info("HNAS Create_Dup: %d", self.start_lun)
self.createVolume(name, id + '.' + str(self.start_lun), size, self.createVolume(name, id + '.' + str(self.start_lun), size,
"create-dup") "create-dup")
self.start_lun += 1 self.start_lun += 1
@ -231,7 +198,6 @@ class SimulatedHnasBackend(object):
self.init_index += 1 self.init_index += 1
self.target_index += 1 self.target_index += 1
self.hlun += 1 self.hlun += 1
LOG.debug("Created connection %d", self.init_index)
self.connections.append(conn) self.connections.append(conn)
return _out return _out
@ -246,11 +212,9 @@ class SimulatedHnasBackend(object):
_out = ("LUN: %s successfully extended to %s MB" % (lu, size)) _out = ("LUN: %s successfully extended to %s MB" % (lu, size))
id = name id = name
self.out = _out self.out = _out
LOG.info("extend_vol: lu: %s %d -> %s", lu, int(size), self.out)
v = self.getVolumebyProvider(id + '.' + str(lu)) v = self.getVolumebyProvider(id + '.' + str(lu))
if v: if v:
v['sizeMiB'] = size v['sizeMiB'] = size
LOG.info("extend_vol: out %s %s", self.out, self)
return _out return _out
def get_luns(self): def get_luns(self):

View File

@ -18,7 +18,6 @@ import os
import tempfile import tempfile
import mock import mock
from oslo_log import log as logging
import six import six
from cinder import exception from cinder import exception
@ -27,7 +26,6 @@ from cinder.volume import configuration as conf
from cinder.volume.drivers.hitachi import hnas_nfs as nfs from cinder.volume.drivers.hitachi import hnas_nfs as nfs
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
SHARESCONF = """172.17.39.132:/cinder SHARESCONF = """172.17.39.132:/cinder
172.17.39.133:/cinder""" 172.17.39.133:/cinder"""
@ -124,9 +122,7 @@ class SimulatedHnasBackend(object):
def file_clone(self, cmd, ip0, user, pw, fslabel, source_path, def file_clone(self, cmd, ip0, user, pw, fslabel, source_path,
target_path): target_path):
_out = "" return ""
LOG.info("Clone: %s -> %s" % (source_path, target_path))
return _out
def get_version(self, ver, cmd, ip0, user, pw): def get_version(self, ver, cmd, ip0, user, pw):
self.out = "Array_ID: 18-48-A5-A1-80-13 (3080-G2) " \ self.out = "Array_ID: 18-48-A5-A1-80-13 (3080-G2) " \

View File

@ -20,7 +20,6 @@ import mock
import ast import ast
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import context from cinder import context
@ -36,8 +35,6 @@ from cinder.volume import volume_types
hpexceptions = hp3parclient.hpexceptions hpexceptions = hp3parclient.hpexceptions
LOG = logging.getLogger(__name__)
CONF = cfg.CONF CONF = cfg.CONF
HP3PAR_CPG = 'OpenStackCPG' HP3PAR_CPG = 'OpenStackCPG'

View File

@ -16,7 +16,6 @@
"""Unit tests for OpenStack Cinder volume drivers.""" """Unit tests for OpenStack Cinder volume drivers."""
import mock import mock
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
import six import six
@ -30,8 +29,6 @@ from cinder.volume import volume_types
hpexceptions = hplefthandclient.hpexceptions hpexceptions = hplefthandclient.hpexceptions
LOG = logging.getLogger(__name__)
GOODNESS_FUNCTION = \ GOODNESS_FUNCTION = \
"capabilities.capacity_utilization < 0.6? 100 : 25" "capabilities.capacity_utilization < 0.6? 100 : 25"
FILTER_FUNCTION = \ FILTER_FUNCTION = \

View File

@ -21,7 +21,6 @@ import time
from xml.dom import minidom from xml.dom import minidom
import mock import mock
from oslo_log import log as logging
from cinder import exception from cinder import exception
from cinder import test from cinder import test
@ -29,7 +28,6 @@ from cinder.volume import configuration as conf
from cinder.volume.drivers.huawei import huawei_18000 from cinder.volume.drivers.huawei import huawei_18000
from cinder.volume.drivers.huawei import rest_common from cinder.volume.drivers.huawei import rest_common
LOG = logging.getLogger(__name__)
test_volume = {'name': 'volume-21ec7341-9256-497b-97d9-ef48edcf0635', test_volume = {'name': 'volume-21ec7341-9256-497b-97d9-ef48edcf0635',
'size': 2, 'size': 2,

View File

@ -21,8 +21,6 @@ Tests for the IBM FlashSystem volume driver.
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import units from oslo_utils import units
import six import six
@ -38,8 +36,6 @@ from cinder.volume.drivers.ibm import flashsystem_fc
from cinder.volume import utils as volume_utils from cinder.volume import utils as volume_utils
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
class FlashSystemManagementSimulator(object): class FlashSystemManagementSimulator(object):
def __init__(self): def __init__(self):
@ -664,19 +660,8 @@ class FlashSystemFakeDriver(flashsystem_fc.FlashSystemFCDriver):
self.fake_storage = fake self.fake_storage = fake
def _ssh(self, cmd, check_exit_code=True): def _ssh(self, cmd, check_exit_code=True):
try: utils.check_ssh_injection(cmd)
LOG.debug('Run CLI command: %s' % cmd) ret = self.fake_storage.execute_command(cmd, check_exit_code)
utils.check_ssh_injection(cmd)
ret = self.fake_storage.execute_command(cmd, check_exit_code)
(stdout, stderr) = ret
LOG.debug('CLI output:\n stdout: %(stdout)s\n stderr: '
'%(stderr)s' % {'stdout': stdout, 'stderr': stderr})
except processutils.ProcessExecutionError as e:
with excutils.save_and_reraise_exception():
LOG.debug('CLI Exception output:\n stdout: %(out)s\n '
'stderr: %(err)s' % {'out': e.stdout,
'err': e.stderr})
return ret return ret

View File

@ -19,9 +19,6 @@ Tests for the IBM FlashSystem iSCSI volume driver.
""" """
import mock import mock
from oslo_concurrency import processutils
from oslo_log import log as logging
from oslo_utils import excutils
import six import six
import random import random
@ -35,8 +32,6 @@ from cinder.volume import configuration as conf
from cinder.volume.drivers.ibm import flashsystem_iscsi from cinder.volume.drivers.ibm import flashsystem_iscsi
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
class FlashSystemManagementSimulator(fscommon.FlashSystemManagementSimulator): class FlashSystemManagementSimulator(fscommon.FlashSystemManagementSimulator):
def __init__(self): def __init__(self):
@ -66,20 +61,8 @@ class FlashSystemFakeISCSIDriver(flashsystem_iscsi.FlashSystemISCSIDriver):
self.fake_storage = fake self.fake_storage = fake
def _ssh(self, cmd, check_exit_code=True): def _ssh(self, cmd, check_exit_code=True):
ret = None utils.check_ssh_injection(cmd)
try: ret = self.fake_storage.execute_command(cmd, check_exit_code)
LOG.debug('Run CLI command: %s', cmd)
utils.check_ssh_injection(cmd)
ret = self.fake_storage.execute_command(cmd, check_exit_code)
(stdout, stderr) = ret
LOG.debug('CLI output:\n stdout: %(stdout)s\n stderr: '
'%(stderr)s', {'stdout': stdout, 'stderr': stderr})
except processutils.ProcessExecutionError as e:
with excutils.save_and_reraise_exception():
LOG.debug('CLI Exception output:\n stdout: %(out)s\n '
'stderr: %(err)s', {'out': e.stdout,
'err': e.stderr})
return ret return ret

View File

@ -23,7 +23,6 @@ NAS based IBM GPFS Storage Systems).
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import context from cinder import context
@ -32,8 +31,6 @@ from cinder import test
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
from cinder.volume.drivers.ibm import ibmnas from cinder.volume.drivers.ibm import ibmnas
LOG = logging.getLogger(__name__)
CONF = cfg.CONF CONF = cfg.CONF

View File

@ -19,7 +19,6 @@ Tests for NetApp volume driver
from lxml import etree from lxml import etree
import mock import mock
from oslo_log import log as logging
import six import six
from six.moves import BaseHTTPServer from six.moves import BaseHTTPServer
from six.moves import http_client from six.moves import http_client
@ -35,9 +34,6 @@ from cinder.volume.drivers.netapp import options
from cinder.volume.drivers.netapp import utils from cinder.volume.drivers.netapp import utils
LOG = logging.getLogger("cinder.volume.driver")
def create_configuration(): def create_configuration():
configuration = conf.Configuration(None) configuration = conf.Configuration(None)
configuration.append_config_values(options.netapp_connection_opts) configuration.append_config_values(options.netapp_connection_opts)

View File

@ -23,7 +23,6 @@ import json
import re import re
import mock import mock
from oslo_log import log as logging
import requests import requests
from six.moves import urllib from six.moves import urllib
@ -38,9 +37,6 @@ from cinder.volume.drivers.netapp import options
import cinder.volume.drivers.netapp.utils as na_utils import cinder.volume.drivers.netapp.utils as na_utils
LOG = logging.getLogger(__name__)
def create_configuration(): def create_configuration():
configuration = conf.Configuration(None) configuration = conf.Configuration(None)
configuration.append_config_values(options.netapp_basicauth_opts) configuration.append_config_values(options.netapp_basicauth_opts)

View File

@ -22,11 +22,9 @@ import unittest
from lxml import etree from lxml import etree
import mock import mock
from mox3 import mox as mox_lib from mox3 import mox as mox_lib
from oslo_log import log as logging
import six import six
from cinder import exception from cinder import exception
from cinder.i18n import _LW
from cinder.image import image_utils from cinder.image import image_utils
from cinder import test from cinder import test
from cinder import utils as cinder_utils from cinder import utils as cinder_utils
@ -48,8 +46,6 @@ from cinder.volume.drivers.netapp import utils
from oslo_config import cfg from oslo_config import cfg
CONF = cfg.CONF CONF = cfg.CONF
LOG = logging.getLogger(__name__)
CONNECTION_INFO = {'hostname': 'fake_host', CONNECTION_INFO = {'hostname': 'fake_host',
'transport_type': 'https', 'transport_type': 'https',
@ -375,8 +371,6 @@ class NetAppCmodeNfsDriverTestCase(test.TestCase):
if (share == 'testshare' and file_name == 'img-cache-id'): if (share == 'testshare' and file_name == 'img-cache-id'):
pass pass
else: else:
LOG.warning(_LW("Share %(share)s and file name %(file_name)s")
% {'share': share, 'file_name': file_name})
self.fail('Return result is unexpected') self.fail('Return result is unexpected')
def test_find_old_cache_files_notexists(self): def test_find_old_cache_files_notexists(self):

View File

@ -15,7 +15,6 @@
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import exception from cinder import exception
from cinder import test from cinder import test
@ -26,7 +25,6 @@ CONF = cfg.CONF
NIMBLE_CLIENT = 'cinder.volume.drivers.nimble.client' NIMBLE_CLIENT = 'cinder.volume.drivers.nimble.client'
NIMBLE_URLLIB2 = 'six.moves.urllib.request' NIMBLE_URLLIB2 = 'six.moves.urllib.request'
NIMBLE_RANDOM = 'cinder.volume.drivers.nimble.random' NIMBLE_RANDOM = 'cinder.volume.drivers.nimble.random'
LOG = logging.getLogger(__name__)
FAKE_ENUM_STRING = """ FAKE_ENUM_STRING = """
<simpleType name="SmErrorType"> <simpleType name="SmErrorType">

View File

@ -20,7 +20,6 @@ Unit Tests for qos specs internal API
import time import time
from oslo_db import exception as db_exc from oslo_db import exception as db_exc
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
@ -30,9 +29,6 @@ from cinder.volume import qos_specs
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
def fake_db_qos_specs_create(context, values): def fake_db_qos_specs_create(context, values):
if values['name'] == 'DupQoSName': if values['name'] == 'DupQoSName':
raise exception.QoSSpecsExists(specs_id=values['name']) raise exception.QoSSpecsExists(specs_id=values['name'])

View File

@ -21,7 +21,6 @@ import os
import tempfile import tempfile
import mock import mock
from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
from oslo_utils import units from oslo_utils import units
@ -37,9 +36,6 @@ import cinder.volume.drivers.rbd as driver
from cinder.volume.flows.manager import create_volume from cinder.volume.flows.manager import create_volume
LOG = logging.getLogger(__name__)
# This is used to collect raised exceptions so that tests may check what was # This is used to collect raised exceptions so that tests may check what was
# raised. # raised.
# NOTE: this must be initialised in test setUp(). # NOTE: this must be initialised in test setUp().

View File

@ -18,7 +18,6 @@ Unit tests for the Scality Rest Block Volume Driver.
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import context from cinder import context
@ -28,8 +27,6 @@ from cinder.tests.unit.brick import test_brick_lvm
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
from cinder.volume.drivers import srb from cinder.volume.drivers import srb
LOG = logging.getLogger(__name__)
class SRBLvmTestCase(test_brick_lvm.BrickLvmTestCase): class SRBLvmTestCase(test_brick_lvm.BrickLvmTestCase):
def setUp(self): def setUp(self):

View File

@ -24,8 +24,6 @@ import time
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from oslo_utils import excutils
from oslo_utils import importutils from oslo_utils import importutils
from oslo_utils import units from oslo_utils import units
@ -42,8 +40,6 @@ from cinder.volume.drivers.ibm.storwize_svc import ssh
from cinder.volume import qos_specs from cinder.volume import qos_specs
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
class StorwizeSVCManagementSimulator(object): class StorwizeSVCManagementSimulator(object):
def __init__(self, pool_name): def __init__(self, pool_name):
@ -1681,19 +1677,8 @@ class StorwizeSVCFakeDriver(storwize_svc.StorwizeSVCDriver):
self.fake_storage = fake self.fake_storage = fake
def _run_ssh(self, cmd, check_exit_code=True, attempts=1): def _run_ssh(self, cmd, check_exit_code=True, attempts=1):
try: utils.check_ssh_injection(cmd)
LOG.debug('Run CLI command: %s' % cmd) ret = self.fake_storage.execute_command(cmd, check_exit_code)
utils.check_ssh_injection(cmd)
ret = self.fake_storage.execute_command(cmd, check_exit_code)
(stdout, stderr) = ret
LOG.debug('CLI output:\n stdout: %(stdout)s\n stderr: '
'%(stderr)s' % {'stdout': stdout, 'stderr': stderr})
except processutils.ProcessExecutionError as e:
with excutils.save_and_reraise_exception():
LOG.debug('CLI Exception output:\n stdout: %(out)s\n '
'stderr: %(err)s' % {'out': e.stdout,
'err': e.stderr})
return ret return ret

View File

@ -17,7 +17,6 @@ Volume driver test for Tintri storage.
import mock import mock
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import context from cinder import context
@ -28,8 +27,6 @@ from cinder.tests.unit import fake_volume
from cinder.volume.drivers.tintri import TClient from cinder.volume.drivers.tintri import TClient
from cinder.volume.drivers.tintri import TintriDriver from cinder.volume.drivers.tintri import TintriDriver
LOG = logging.getLogger(__name__)
class FakeImage(object): class FakeImage(object):
def __init__(self): def __init__(self):

View File

@ -17,15 +17,11 @@
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import test from cinder import test
from cinder.volume import configuration from cinder.volume import configuration
LOG = logging.getLogger(__name__)
volume_opts = [ volume_opts = [
cfg.StrOpt('str_opt', default='STR_OPT'), cfg.StrOpt('str_opt', default='STR_OPT'),
cfg.BoolOpt('bool_opt', default=False) cfg.BoolOpt('bool_opt', default=False)

View File

@ -14,9 +14,7 @@
import datetime import datetime
import mock import mock
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
@ -26,9 +24,6 @@ from cinder.tests.unit import utils
from cinder.transfer import api as transfer_api from cinder.transfer import api as transfer_api
LOG = logging.getLogger(__name__)
class VolumeTransferTestCase(test.TestCase): class VolumeTransferTestCase(test.TestCase):
"""Test cases for volume transfer code.""" """Test cases for volume transfer code."""
def setUp(self): def setUp(self):

View File

@ -20,23 +20,18 @@ import datetime
import time import time
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import db from cinder import db
from cinder.db.sqlalchemy import api as db_api from cinder.db.sqlalchemy import api as db_api
from cinder.db.sqlalchemy import models from cinder.db.sqlalchemy import models
from cinder import exception from cinder import exception
from cinder.i18n import _
from cinder import test from cinder import test
from cinder.tests.unit import conf_fixture from cinder.tests.unit import conf_fixture
from cinder.volume import qos_specs from cinder.volume import qos_specs
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
class VolumeTypeTestCase(test.TestCase): class VolumeTypeTestCase(test.TestCase):
"""Test cases for volume type code.""" """Test cases for volume type code."""
def setUp(self): def setUp(self):
@ -63,9 +58,6 @@ class VolumeTypeTestCase(test.TestCase):
new = volume_types.get_volume_type_by_name(self.ctxt, new = volume_types.get_volume_type_by_name(self.ctxt,
self.vol_type1_name) self.vol_type1_name)
LOG.info(_("Given data: %s"), self.vol_type1_specs)
LOG.info(_("Result data: %s"), new)
self.assertEqual(self.vol_type1_description, new['description']) self.assertEqual(self.vol_type1_description, new['description'])
for k, v in self.vol_type1_specs.items(): for k, v in self.vol_type1_specs.items():
@ -187,7 +179,6 @@ class VolumeTypeTestCase(test.TestCase):
vol_types = volume_types.get_all_types( vol_types = volume_types.get_all_types(
self.ctxt, self.ctxt,
search_opts={'extra_specs': {"key1": "val1"}}) search_opts={'extra_specs': {"key1": "val1"}})
LOG.info("vol_types: %s" % vol_types)
self.assertEqual(len(vol_types), 1) self.assertEqual(len(vol_types), 1)
self.assertIn("type1", vol_types.keys()) self.assertIn("type1", vol_types.keys())
self.assertEqual(vol_types['type1']['extra_specs'], self.assertEqual(vol_types['type1']['extra_specs'],
@ -196,7 +187,6 @@ class VolumeTypeTestCase(test.TestCase):
vol_types = volume_types.get_all_types( vol_types = volume_types.get_all_types(
self.ctxt, self.ctxt,
search_opts={'extra_specs': {"key2": "val2"}}) search_opts={'extra_specs': {"key2": "val2"}})
LOG.info("vol_types: %s" % vol_types)
self.assertEqual(len(vol_types), 2) self.assertEqual(len(vol_types), 2)
self.assertIn("type1", vol_types.keys()) self.assertIn("type1", vol_types.keys())
self.assertIn("type2", vol_types.keys()) self.assertIn("type2", vol_types.keys())
@ -204,7 +194,6 @@ class VolumeTypeTestCase(test.TestCase):
vol_types = volume_types.get_all_types( vol_types = volume_types.get_all_types(
self.ctxt, self.ctxt,
search_opts={'extra_specs': {"key3": "val3"}}) search_opts={'extra_specs': {"key3": "val3"}})
LOG.info("vol_types: %s" % vol_types)
self.assertEqual(len(vol_types), 1) self.assertEqual(len(vol_types), 1)
self.assertIn("type2", vol_types.keys()) self.assertIn("type2", vol_types.keys())
@ -223,7 +212,6 @@ class VolumeTypeTestCase(test.TestCase):
self.ctxt, self.ctxt,
search_opts={'extra_specs': {"key1": "val1", search_opts={'extra_specs': {"key1": "val1",
"key3": "val3"}}) "key3": "val3"}})
LOG.info("vol_types: %s" % vol_types)
self.assertEqual(len(vol_types), 2) self.assertEqual(len(vol_types), 2)
self.assertIn("type1", vol_types.keys()) self.assertIn("type1", vol_types.keys())
self.assertIn("type3", vol_types.keys()) self.assertIn("type3", vol_types.keys())

View File

@ -21,7 +21,6 @@ import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from cinder import exception from cinder import exception
from cinder import test from cinder import test
@ -30,8 +29,6 @@ from cinder.volume import throttling
from cinder.volume import utils as volume_utils from cinder.volume import utils as volume_utils
LOG = logging.getLogger(__name__)
CONF = cfg.CONF CONF = cfg.CONF

View File

@ -18,7 +18,6 @@ Unit tests for Oracle's ZFSSA Cinder volume driver
import json import json
import mock import mock
from oslo_log import log as logging
from oslo_utils import units from oslo_utils import units
from cinder import test from cinder import test
@ -30,8 +29,6 @@ from cinder.volume.drivers.zfssa import zfssanfs
from cinder.volume.drivers.zfssa import zfssarest as rest from cinder.volume.drivers.zfssa import zfssarest as rest
LOG = logging.getLogger(__name__)
nfs_logbias = 'latency' nfs_logbias = 'latency'
nfs_compression = 'off' nfs_compression = 'off'

View File

@ -18,7 +18,6 @@ Mock unit tests for the NetApp cmode nfs storage driver
import mock import mock
from os_brick.remotefs import remotefs as remotefs_brick from os_brick.remotefs import remotefs as remotefs_brick
from oslo_log import log as logging
from oslo_service import loopingcall from oslo_service import loopingcall
from oslo_utils import units from oslo_utils import units
@ -37,9 +36,6 @@ from cinder.volume.drivers import nfs
from cinder.volume import utils as volume_utils from cinder.volume import utils as volume_utils
LOG = logging.getLogger(__name__)
class NetAppCmodeNfsDriverTestCase(test.TestCase): class NetAppCmodeNfsDriverTestCase(test.TestCase):
def setUp(self): def setUp(self):
super(NetAppCmodeNfsDriverTestCase, self).setUp() super(NetAppCmodeNfsDriverTestCase, self).setUp()

View File

@ -14,7 +14,6 @@
# under the License. # under the License.
import mock import mock
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import exception from cinder import exception
@ -23,9 +22,6 @@ from cinder.volume import configuration as conf
from cinder.volume.drivers import datera from cinder.volume.drivers import datera
LOG = logging.getLogger(__name__)
class DateraVolumeTestCase(test.TestCase): class DateraVolumeTestCase(test.TestCase):
def setUp(self): def setUp(self):
super(DateraVolumeTestCase, self).setUp() super(DateraVolumeTestCase, self).setUp()

View File

@ -17,7 +17,6 @@
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from cinder import context from cinder import context
from cinder import exception from cinder import exception
@ -27,9 +26,6 @@ from cinder.volume.drivers.hgst import HGSTDriver
from cinder.volume import volume_types from cinder.volume import volume_types
LOG = logging.getLogger(__name__)
class HGSTTestCase(test.TestCase): class HGSTTestCase(test.TestCase):
# Need to mock these since we use them on driver creation # Need to mock these since we use them on driver creation

View File

@ -21,7 +21,6 @@
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
import paramiko import paramiko
from cinder import exception from cinder import exception
@ -31,7 +30,6 @@ import cinder.zonemanager.drivers.brocade.brcd_fc_san_lookup_service \
as brcd_lookup as brcd_lookup
from cinder.zonemanager.drivers.brocade import fc_zone_constants from cinder.zonemanager.drivers.brocade import fc_zone_constants
LOG = logging.getLogger(__name__)
nsshow = '20:1a:00:05:1e:e8:e3:29' nsshow = '20:1a:00:05:1e:e8:e3:29'
switch_data = [' N 011a00;2,3;20:1a:00:05:1e:e8:e3:29;\ switch_data = [' N 011a00;2,3;20:1a:00:05:1e:e8:e3:29;\

View File

@ -21,7 +21,6 @@
import mock import mock
from oslo_concurrency import processutils from oslo_concurrency import processutils
from oslo_log import log as logging
from cinder import exception from cinder import exception
from cinder import test from cinder import test
@ -29,7 +28,6 @@ from cinder.zonemanager.drivers.brocade \
import brcd_fc_zone_client_cli as client_cli import brcd_fc_zone_client_cli as client_cli
import cinder.zonemanager.drivers.brocade.fc_zone_constants as ZoneConstant import cinder.zonemanager.drivers.brocade.fc_zone_constants as ZoneConstant
LOG = logging.getLogger(__name__)
nsshow = '20:1a:00:05:1e:e8:e3:29' nsshow = '20:1a:00:05:1e:e8:e3:29'
switch_data = [' N 011a00;2,3;20:1a:00:05:1e:e8:e3:29;\ switch_data = [' N 011a00;2,3;20:1a:00:05:1e:e8:e3:29;\

View File

@ -21,18 +21,14 @@
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import importutils from oslo_utils import importutils
import paramiko import paramiko
from cinder import exception from cinder import exception
from cinder.i18n import _LI
from cinder import test from cinder import test
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
from cinder.zonemanager.drivers.brocade import brcd_fc_zone_driver as driver from cinder.zonemanager.drivers.brocade import brcd_fc_zone_driver as driver
LOG = logging.getLogger(__name__)
_active_cfg_before_add = {} _active_cfg_before_add = {}
_active_cfg_before_delete = { _active_cfg_before_delete = {
'zones': { 'zones': {
@ -123,10 +119,6 @@ class TestBrcdFcZoneDriver(BrcdFcZoneDriverBaseTest, test.TestCase):
"""Normal flow for i-t mode.""" """Normal flow for i-t mode."""
GlobalVars._is_normal_test = True GlobalVars._is_normal_test = True
GlobalVars._zone_state = [] GlobalVars._zone_state = []
LOG.info(_LI("In Add GlobalVars._is_normal_test: "
"%s"), GlobalVars._is_normal_test)
LOG.info(_LI("In Add GlobalVars._zone_state:"
" %s"), GlobalVars._zone_state)
get_active_zs_mock.return_value = _active_cfg_before_add get_active_zs_mock.return_value = _active_cfg_before_add
self.driver.add_connection('BRCD_FAB_1', _initiator_target_map) self.driver.add_connection('BRCD_FAB_1', _initiator_target_map)
self.assertTrue(_zone_name in GlobalVars._zone_state) self.assertTrue(_zone_name in GlobalVars._zone_state)
@ -180,14 +172,11 @@ class TestBrcdFcZoneDriver(BrcdFcZoneDriverBaseTest, test.TestCase):
class FakeBrcdFCZoneClientCLI(object): class FakeBrcdFCZoneClientCLI(object):
def __init__(self, ipaddress, username, password, port): def __init__(self, ipaddress, username, password, port):
LOG.info(_LI("User: %s"), username)
LOG.info(_LI("_zone_state: %s"), GlobalVars._zone_state)
self.firmware_supported = True self.firmware_supported = True
if not GlobalVars._is_normal_test: if not GlobalVars._is_normal_test:
raise paramiko.SSHException("Unable to connect to fabric") raise paramiko.SSHException("Unable to connect to fabric")
def get_active_zone_set(self): def get_active_zone_set(self):
LOG.debug("Inside get_active_zone_set %s", GlobalVars._active_cfg)
return GlobalVars._active_cfg return GlobalVars._active_cfg
def add_zones(self, zones, isActivate, active_zone_set): def add_zones(self, zones, isActivate, active_zone_set):

View File

@ -19,15 +19,11 @@
"""Unit tests for fc san lookup service.""" """Unit tests for fc san lookup service."""
from oslo_log import log as logging
from cinder import exception from cinder import exception
from cinder import test from cinder import test
from cinder.volume import configuration as conf from cinder.volume import configuration as conf
from cinder.zonemanager import fc_san_lookup_service as san_service from cinder.zonemanager import fc_san_lookup_service as san_service
LOG = logging.getLogger(__name__)
_target_ns_map = {'100000051e55a100': ['20240002ac000a50']} _target_ns_map = {'100000051e55a100': ['20240002ac000a50']}
_initiator_ns_map = {'100000051e55a100': ['10008c7cff523b01']} _initiator_ns_map = {'100000051e55a100': ['10008c7cff523b01']}
_device_map_to_verify = { _device_map_to_verify = {