diff options
Diffstat (limited to 'quantum')
82 files changed, 318 insertions, 223 deletions
diff --git a/quantum/plugins/cisco/tests/unit/test_cisco_extension.py b/quantum/plugins/cisco/tests/unit/test_cisco_extension.py index 87fa731fac..acc022062f 100644 --- a/quantum/plugins/cisco/tests/unit/test_cisco_extension.py +++ b/quantum/plugins/cisco/tests/unit/test_cisco_extension.py @@ -22,7 +22,6 @@ import logging import os.path import routes -import testtools import webob from webtest import TestApp @@ -42,6 +41,7 @@ from quantum.openstack.common import jsonutils from quantum.plugins.cisco.db import api as db from quantum.plugins.cisco import l2network_plugin from quantum.plugins.cisco.l2network_plugin import L2Network +from quantum.tests import base from quantum.tests.unit.extension_stubs import StubBaseAppController from quantum import wsgi @@ -150,7 +150,7 @@ class ExtensionsTestApp(wsgi.Router): self._delete_network(net_id) -class QosExtensionTest(testtools.TestCase): +class QosExtensionTest(base.BaseTestCase): def setUp(self): @@ -406,7 +406,7 @@ class QosExtensionTest(testtools.TestCase): db.clear_db() -class CredentialExtensionTest(testtools.TestCase): +class CredentialExtensionTest(base.BaseTestCase): def setUp(self): diff --git a/quantum/plugins/cisco/tests/unit/test_database.py b/quantum/plugins/cisco/tests/unit/test_database.py index 20362369be..bc183a1809 100644 --- a/quantum/plugins/cisco/tests/unit/test_database.py +++ b/quantum/plugins/cisco/tests/unit/test_database.py @@ -22,13 +22,12 @@ that tests the database api method calls import logging as LOG -import testtools - from quantum.openstack.common import log as logging from quantum.plugins.cisco.common import cisco_constants as const import quantum.plugins.cisco.db.api as db import quantum.plugins.cisco.db.l2network_db as l2network_db import quantum.plugins.cisco.db.nexus_db_v2 as nexus_db +from quantum.tests import base LOG = logging.getLogger(__name__) @@ -347,7 +346,7 @@ class QuantumDB(object): raise Exception("Failed to unplug interface: %s" % str(exc)) -class NexusDBTest(testtools.TestCase): +class NexusDBTest(base.BaseTestCase): """Class conisting of nexus DB unit tests""" def setUp(self): super(NexusDBTest, self).setUp() @@ -409,7 +408,7 @@ class NexusDBTest(testtools.TestCase): self.dbtest.delete_nexusportbinding(vlan_id) -class L2networkDBTest(testtools.TestCase): +class L2networkDBTest(base.BaseTestCase): """Class conisting of L2network DB unit tests""" def setUp(self): """Setup for tests""" @@ -515,7 +514,7 @@ class L2networkDBTest(testtools.TestCase): self.dbtest.delete_vlan_binding(netid) -class QuantumDBTest(testtools.TestCase): +class QuantumDBTest(base.BaseTestCase): """Class conisting of Quantum DB unit tests""" def setUp(self): """Setup for tests""" diff --git a/quantum/tests/base.py b/quantum/tests/base.py new file mode 100644 index 0000000000..7a582fa9a0 --- /dev/null +++ b/quantum/tests/base.py @@ -0,0 +1,72 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010-2011 OpenStack, LLC +# All Rights Reserved. +# +# 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. + +"""Base Test Case for all Unit Tests""" + +import os + +import fixtures +from oslo.config import cfg +import testtools + +CONF = cfg.CONF +TRUE_STRING = ['True', '1'] + + +class BaseTestCase(testtools.TestCase): + + def setUp(self): + super(BaseTestCase, self).setUp() + + self.useFixture(fixtures.FakeLogger( + format="%(asctime)s %(levelname)8s [%(name)s] %(message)s")) + + test_timeout = int(os.environ.get('OS_TEST_TIMEOUT', 0)) + if test_timeout == -1: + test_timeout = 0 + if test_timeout > 0: + self.useFixture(fixtures.Timeout(test_timeout, gentle=True)) + + # If someone does use tempfile directly, ensure that it's cleaned up + self.useFixture(fixtures.NestedTempfile()) + self.useFixture(fixtures.TempHomeDir()) + + self.addCleanup(CONF.reset) + + if os.environ.get('OS_STDOUT_NOCAPTURE') not in TRUE_STRING: + stdout = self.useFixture(fixtures.StringStream('stdout')).stream + self.useFixture(fixtures.MonkeyPatch('sys.stdout', stdout)) + if os.environ.get('OS_STDERR_NOCAPTURE') not in TRUE_STRING: + stderr = self.useFixture(fixtures.StringStream('stderr')).stream + self.useFixture(fixtures.MonkeyPatch('sys.stderr', stderr)) + + def config(self, **kw): + """ + Override some configuration values. + + The keyword arguments are the names of configuration options to + override and their values. + + If a group argument is supplied, the overrides are applied to + the specified configuration option group. + + All overrides are automatically cleared at the end of the current + test by the fixtures cleanup process. + """ + group = kw.pop('group', None) + for k, v in kw.iteritems(): + CONF.set_override(k, v, group) diff --git a/quantum/tests/unit/__init__.py b/quantum/tests/unit/__init__.py index de5064afe0..eeda0121b3 100644 --- a/quantum/tests/unit/__init__.py +++ b/quantum/tests/unit/__init__.py @@ -21,8 +21,6 @@ import __builtin__ import os -import testtools - setattr(__builtin__, '_', lambda x: x) from oslo.config import cfg @@ -34,3 +32,4 @@ cfg.CONF.state_path = absdir # An empty lock path forces lockutils.synchronized to use a temporary # location for lock files that will be cleaned up automatically. cfg.CONF.lock_path = '' +cfg.CONF.use_stderr = False diff --git a/quantum/tests/unit/_test_rootwrap_exec.py b/quantum/tests/unit/_test_rootwrap_exec.py index 188717cca6..e1f54df8f9 100644 --- a/quantum/tests/unit/_test_rootwrap_exec.py +++ b/quantum/tests/unit/_test_rootwrap_exec.py @@ -18,16 +18,16 @@ import os import fixtures -import testtools from quantum.agent.linux import utils from quantum.openstack.common import log as logging +from quantum.tests import base LOG = logging.getLogger(__name__) -class RootwrapTestExec(testtools.TestCase): +class RootwrapTestExec(base.BaseTestCase): """Simple unit test to test the basic rootwrap mechanism Essentially hello-world. Just run a command as root and check that diff --git a/quantum/tests/unit/brocade/test_brocade_vlan.py b/quantum/tests/unit/brocade/test_brocade_vlan.py index 454417d020..5640ca0030 100644 --- a/quantum/tests/unit/brocade/test_brocade_vlan.py +++ b/quantum/tests/unit/brocade/test_brocade_vlan.py @@ -19,14 +19,14 @@ """ Test vlans alloc/dealloc. """ -import testtools from quantum.db import api as db from quantum.openstack.common import context from quantum.plugins.brocade import vlanbm as vlan_bitmap +from quantum.tests import base -class TestVlanBitmap(testtools.TestCase): +class TestVlanBitmap(base.BaseTestCase): """exercise Vlan bitmap .""" def setUp(self): diff --git a/quantum/tests/unit/cisco/test_nexus_plugin.py b/quantum/tests/unit/cisco/test_nexus_plugin.py index 91609a4231..f2814a362d 100644 --- a/quantum/tests/unit/cisco/test_nexus_plugin.py +++ b/quantum/tests/unit/cisco/test_nexus_plugin.py @@ -14,13 +14,13 @@ # limitations under the License. import mock -import testtools from quantum.db import api as db from quantum.openstack.common import importutils from quantum.plugins.cisco.common import cisco_constants as const from quantum.plugins.cisco.db import network_models_v2 from quantum.plugins.cisco.nexus import cisco_nexus_plugin_v2 +from quantum.tests import base NEXUS_IP_ADDRESS = '1.1.1.1' @@ -34,7 +34,7 @@ NEXUS_DRIVER = ('quantum.plugins.cisco.tests.unit.v2.nexus.' 'fake_nexus_driver.CiscoNEXUSFakeDriver') -class TestCiscoNexusPlugin(testtools.TestCase): +class TestCiscoNexusPlugin(base.BaseTestCase): def setUp(self): """ diff --git a/quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py b/quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py index 7ea8110af6..5b89a27d27 100644 --- a/quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py +++ b/quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py @@ -24,12 +24,12 @@ import sys import mock from oslo.config import cfg -import testtools from quantum.plugins.hyperv.agent import hyperv_quantum_agent +from quantum.tests import base -class TestHyperVQuantumAgent(testtools.TestCase): +class TestHyperVQuantumAgent(base.BaseTestCase): def setUp(self): super(TestHyperVQuantumAgent, self).setUp() diff --git a/quantum/tests/unit/hyperv/test_hyperv_rpcapi.py b/quantum/tests/unit/hyperv/test_hyperv_rpcapi.py index 707f4fb207..bf94cf31c6 100644 --- a/quantum/tests/unit/hyperv/test_hyperv_rpcapi.py +++ b/quantum/tests/unit/hyperv/test_hyperv_rpcapi.py @@ -21,7 +21,6 @@ Unit Tests for hyperv quantum rpc """ import mock -import testtools from quantum.agent import rpc as agent_rpc from quantum.common import topics @@ -29,9 +28,10 @@ from quantum.openstack.common import context from quantum.openstack.common import rpc from quantum.plugins.hyperv import agent_notifier_api as ana from quantum.plugins.hyperv.common import constants +from quantum.tests import base -class rpcHyperVApiTestCase(testtools.TestCase): +class rpcHyperVApiTestCase(base.BaseTestCase): def _test_hyperv_quantum_api( self, rpcapi, topic, method, rpc_method, **kwargs): diff --git a/quantum/tests/unit/linuxbridge/test_defaults.py b/quantum/tests/unit/linuxbridge/test_defaults.py index d67103c259..2f06086a1d 100644 --- a/quantum/tests/unit/linuxbridge/test_defaults.py +++ b/quantum/tests/unit/linuxbridge/test_defaults.py @@ -14,13 +14,13 @@ # limitations under the License. from oslo.config import cfg -import testtools #NOTE this import loads tests required options from quantum.plugins.linuxbridge.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): def test_defaults(self): self.assertEqual(-1, diff --git a/quantum/tests/unit/linuxbridge/test_lb_db.py b/quantum/tests/unit/linuxbridge/test_lb_db.py index e8007976f5..ae539f05ba 100644 --- a/quantum/tests/unit/linuxbridge/test_lb_db.py +++ b/quantum/tests/unit/linuxbridge/test_lb_db.py @@ -19,6 +19,7 @@ from testtools import matchers from quantum.common import exceptions as q_exc from quantum.db import api as db from quantum.plugins.linuxbridge.db import l2network_db_v2 as lb_db +from quantum.tests import base from quantum.tests.unit import test_db_plugin as test_plugin PHYS_NET = 'physnet1' @@ -30,7 +31,7 @@ UPDATED_VLAN_RANGES = {PHYS_NET: [(VLAN_MIN + 5, VLAN_MAX + 5)], PHYS_NET_2: [(VLAN_MIN + 20, VLAN_MAX + 20)]} -class NetworkStatesTest(testtools.TestCase): +class NetworkStatesTest(base.BaseTestCase): def setUp(self): super(NetworkStatesTest, self).setUp() lb_db.initialize() diff --git a/quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py b/quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py index da29002277..1ab61d6f43 100644 --- a/quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py +++ b/quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py @@ -22,9 +22,10 @@ import testtools from quantum.plugins.linuxbridge.agent import linuxbridge_quantum_agent from quantum.plugins.linuxbridge.common import constants as lconst +from quantum.tests import base -class TestLinuxBridge(testtools.TestCase): +class TestLinuxBridge(base.BaseTestCase): def setUp(self): super(TestLinuxBridge, self).setUp() @@ -56,7 +57,7 @@ class TestLinuxBridge(testtools.TestCase): self.assertTrue(vlan_bridge_func.called) -class TestLinuxBridgeAgent(testtools.TestCase): +class TestLinuxBridgeAgent(base.BaseTestCase): def setUp(self): super(TestLinuxBridgeAgent, self).setUp() diff --git a/quantum/tests/unit/linuxbridge/test_rpcapi.py b/quantum/tests/unit/linuxbridge/test_rpcapi.py index bf205118f8..939a541434 100644 --- a/quantum/tests/unit/linuxbridge/test_rpcapi.py +++ b/quantum/tests/unit/linuxbridge/test_rpcapi.py @@ -19,16 +19,16 @@ Unit Tests for linuxbridge rpc """ import stubout -import testtools from quantum.agent import rpc as agent_rpc from quantum.common import topics from quantum.openstack.common import context from quantum.openstack.common import rpc from quantum.plugins.linuxbridge import lb_quantum_plugin as plb +from quantum.tests import base -class rpcApiTestCase(testtools.TestCase): +class rpcApiTestCase(base.BaseTestCase): def _test_lb_api(self, rpcapi, topic, method, rpc_method, **kwargs): ctxt = context.RequestContext('fake_user', 'fake_project') diff --git a/quantum/tests/unit/metaplugin/test_metaplugin.py b/quantum/tests/unit/metaplugin/test_metaplugin.py index f9c721fbca..16926c742f 100644 --- a/quantum/tests/unit/metaplugin/test_metaplugin.py +++ b/quantum/tests/unit/metaplugin/test_metaplugin.py @@ -30,6 +30,7 @@ from quantum.extensions.flavor import (FLAVOR_NETWORK, FLAVOR_ROUTER) from quantum.openstack.common import uuidutils from quantum.plugins.metaplugin.meta_quantum_plugin import FlavorNotFound from quantum.plugins.metaplugin.meta_quantum_plugin import MetaPluginV2 +from quantum.tests import base CONF_FILE = "" ROOTDIR = os.path.dirname(os.path.dirname(__file__)) @@ -67,7 +68,7 @@ def setup_metaplugin_conf(): 'quantum.openstack.common.rpc.impl_fake') -class MetaQuantumPluginV2Test(testtools.TestCase): +class MetaQuantumPluginV2Test(base.BaseTestCase): """Class conisting of MetaQuantumPluginV2 unit tests""" def setUp(self): diff --git a/quantum/tests/unit/midonet/test_midonet_lib.py b/quantum/tests/unit/midonet/test_midonet_lib.py index 6774a16365..6fdefe9e6e 100644 --- a/quantum/tests/unit/midonet/test_midonet_lib.py +++ b/quantum/tests/unit/midonet/test_midonet_lib.py @@ -19,15 +19,15 @@ # @author: Ryu Ishimoto, Midokura Japan KK # @author: Tomoe Sugihara, Midokura Japan KK -import testtools import uuid import mock from quantum.plugins.midonet import midonet_lib +from quantum.tests import base -class MidonetLibTestCase(testtools.TestCase): +class MidonetLibTestCase(base.BaseTestCase): def setUp(self): super(MidonetLibTestCase, self).setUp() diff --git a/quantum/tests/unit/nec/test_config.py b/quantum/tests/unit/nec/test_config.py index 60699dccb8..f0347aa905 100644 --- a/quantum/tests/unit/nec/test_config.py +++ b/quantum/tests/unit/nec/test_config.py @@ -15,12 +15,11 @@ # under the License. # @author: Ryota MIBU -import testtools - from quantum.plugins.nec.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): def test_defaults(self): self.assertEqual(-1, config.CONF.DATABASE.sql_max_retries) diff --git a/quantum/tests/unit/nec/test_db.py b/quantum/tests/unit/nec/test_db.py index 0975b40341..1d8a439081 100644 --- a/quantum/tests/unit/nec/test_db.py +++ b/quantum/tests/unit/nec/test_db.py @@ -16,16 +16,16 @@ # @author: Ryota MIBU import random -import testtools from quantum.db import api as db_api from quantum.openstack.common import uuidutils from quantum.plugins.nec.common import exceptions as nexc from quantum.plugins.nec.db import api as ndb from quantum.plugins.nec.db import models as nmodels +from quantum.tests import base -class NECPluginV2DBTestBase(testtools.TestCase): +class NECPluginV2DBTestBase(base.BaseTestCase): """Class conisting of NECPluginV2 DB unit tests""" def setUp(self): diff --git a/quantum/tests/unit/nec/test_ofc_manager.py b/quantum/tests/unit/nec/test_ofc_manager.py index b42e1b6b76..899be61cee 100644 --- a/quantum/tests/unit/nec/test_ofc_manager.py +++ b/quantum/tests/unit/nec/test_ofc_manager.py @@ -15,17 +15,16 @@ # under the License. # @author: Ryota MIBU -import testtools - from quantum import context from quantum.openstack.common import uuidutils from quantum.plugins.nec.common import config from quantum.plugins.nec.db import api as ndb from quantum.plugins.nec.db import models as nmodels from quantum.plugins.nec import ofc_manager +from quantum.tests import base -class OFCManagerTestBase(testtools.TestCase): +class OFCManagerTestBase(base.BaseTestCase): """Class conisting of OFCManager unit tests""" def setUp(self): diff --git a/quantum/tests/unit/nec/test_pfc_driver.py b/quantum/tests/unit/nec/test_pfc_driver.py index 91b5d35775..c78f89d7d3 100644 --- a/quantum/tests/unit/nec/test_pfc_driver.py +++ b/quantum/tests/unit/nec/test_pfc_driver.py @@ -19,7 +19,6 @@ import random import string import mox -import testtools from quantum import context from quantum.openstack.common import uuidutils @@ -27,6 +26,7 @@ from quantum.plugins.nec.common import ofc_client as ofc from quantum.plugins.nec.db import api as ndb from quantum.plugins.nec.db import models as nmodels from quantum.plugins.nec import drivers +from quantum.tests import base class TestConfig(object): @@ -43,7 +43,7 @@ def _ofc(id): return "ofc-%s" % id -class PFCDriverTestBase(testtools.TestCase): +class PFCDriverTestBase(base.BaseTestCase): driver = 'quantum.plugins.nec.drivers.pfc.PFCDriverBase' @@ -192,7 +192,7 @@ class PFCV4DriverTest(PFCDriverTestBase): driver = 'pfc_v4' -class PFCDriverStringTest(testtools.TestCase): +class PFCDriverStringTest(base.BaseTestCase): driver = 'quantum.plugins.nec.drivers.pfc.PFCDriverBase' @@ -235,7 +235,7 @@ class PFCDriverStringTest(testtools.TestCase): self.assertEqual(exp_str, ret_str) -class PFCIdConvertTest(testtools.TestCase): +class PFCIdConvertTest(base.BaseTestCase): driver = 'quantum.plugins.nec.drivers.pfc.PFCDriverBase' def setUp(self): diff --git a/quantum/tests/unit/nec/test_trema_driver.py b/quantum/tests/unit/nec/test_trema_driver.py index a785234963..dd369196be 100644 --- a/quantum/tests/unit/nec/test_trema_driver.py +++ b/quantum/tests/unit/nec/test_trema_driver.py @@ -16,7 +16,6 @@ # @author: Ryota MIBU import mox -import testtools from quantum import context from quantum.openstack.common import uuidutils @@ -24,6 +23,7 @@ from quantum.plugins.nec.common import ofc_client from quantum.plugins.nec.db import api as ndb from quantum.plugins.nec.db import models as nmodels from quantum.plugins.nec import drivers +from quantum.tests import base class TestConfig(object): @@ -32,7 +32,7 @@ class TestConfig(object): port = 8888 -class TremaDriverTestBase(testtools.TestCase): +class TremaDriverTestBase(base.BaseTestCase): driver_name = "trema" @@ -245,7 +245,7 @@ def generate_random_ids(count=1): return [uuidutils.generate_uuid() for i in xrange(count)] -class TremaIdConvertTest(testtools.TestCase): +class TremaIdConvertTest(base.BaseTestCase): driver_name = 'trema' def setUp(self): @@ -288,7 +288,7 @@ class TremaIdConvertTest(testtools.TestCase): self.assertEqual(ret, ofc_f_id) -class TremaIdConvertTestBase(testtools.TestCase): +class TremaIdConvertTestBase(base.BaseTestCase): def setUp(self): super(TremaIdConvertTestBase, self).setUp() self.mox = mox.Mox() diff --git a/quantum/tests/unit/nicira/test_defaults.py b/quantum/tests/unit/nicira/test_defaults.py index fffb796305..3e5580e1b7 100644 --- a/quantum/tests/unit/nicira/test_defaults.py +++ b/quantum/tests/unit/nicira/test_defaults.py @@ -13,14 +13,13 @@ # under the License. # -import testtools - from oslo.config import cfg from quantum.plugins.nicira.nicira_nvp_plugin.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): def test_defaults(self): self.assertEqual(-1, cfg.CONF.DATABASE.sql_max_retries) diff --git a/quantum/tests/unit/nicira/test_networkgw.py b/quantum/tests/unit/nicira/test_networkgw.py index 0ba10bc305..7f7c8f7874 100644 --- a/quantum/tests/unit/nicira/test_networkgw.py +++ b/quantum/tests/unit/nicira/test_networkgw.py @@ -32,6 +32,7 @@ from quantum import manager from quantum.plugins.nicira.nicira_nvp_plugin.extensions import (nvp_networkgw as networkgw) from quantum.plugins.nicira.nicira_nvp_plugin import nicira_networkgw_db +from quantum.tests import base from quantum.tests.unit import test_api_v2 from quantum.tests.unit import test_db_plugin from quantum.tests.unit import test_extensions @@ -53,7 +54,7 @@ class TestExtensionManager(object): return [] -class NetworkGatewayExtensionTestCase(testtools.TestCase): +class NetworkGatewayExtensionTestCase(base.BaseTestCase): def setUp(self): super(NetworkGatewayExtensionTestCase, self).setUp() diff --git a/quantum/tests/unit/nicira/test_nvp_api_common.py b/quantum/tests/unit/nicira/test_nvp_api_common.py index c9b774d4a7..7ec1bd4380 100644 --- a/quantum/tests/unit/nicira/test_nvp_api_common.py +++ b/quantum/tests/unit/nicira/test_nvp_api_common.py @@ -8,14 +8,12 @@ # System import httplib -# Third party -import testtools - # Local import quantum.plugins.nicira.nicira_nvp_plugin.api_client.common as naco +from quantum.tests import base -class NvpApiCommonTest(testtools.TestCase): +class NvpApiCommonTest(base.BaseTestCase): def test_conn_str(self): conn = httplib.HTTPSConnection('localhost', 4242, timeout=0) diff --git a/quantum/tests/unit/nicira/test_nvp_api_request.py b/quantum/tests/unit/nicira/test_nvp_api_request.py index 005449a2ca..2343e2297d 100644 --- a/quantum/tests/unit/nicira/test_nvp_api_request.py +++ b/quantum/tests/unit/nicira/test_nvp_api_request.py @@ -10,7 +10,7 @@ eventlet.monkey_patch() import logging import urllib2 -import testtools +from quantum.tests import base logging.basicConfig(level=logging.DEBUG) lg = logging.getLogger("test_nvp_api_request") @@ -22,6 +22,6 @@ def fetch(url): return urllib2.urlopen(url).read() -class NvpApiRequestTest(testtools.TestCase): +class NvpApiRequestTest(base.BaseTestCase): pass diff --git a/quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py b/quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py index 4a475c7dd6..06ca84aee9 100644 --- a/quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py +++ b/quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py @@ -21,12 +21,12 @@ import eventlet from eventlet.green import urllib2 from mock import Mock from mock import patch -import testtools from quantum.plugins.nicira.nicira_nvp_plugin.api_client import ( client_eventlet as nace, request_eventlet as nare, ) +from quantum.tests import base logging.basicConfig(level=logging.DEBUG) @@ -40,7 +40,7 @@ def fetch(url): return urllib2.urlopen(url).read() -class NvpApiRequestEventletTest(testtools.TestCase): +class NvpApiRequestEventletTest(base.BaseTestCase): def setUp(self): diff --git a/quantum/tests/unit/nicira/test_nvplib.py b/quantum/tests/unit/nicira/test_nvplib.py index 0648c975c0..3e41456a12 100644 --- a/quantum/tests/unit/nicira/test_nvplib.py +++ b/quantum/tests/unit/nicira/test_nvplib.py @@ -18,13 +18,12 @@ import mock import os -import testtools - from quantum.openstack.common import jsonutils as json import quantum.plugins.nicira.nicira_nvp_plugin as nvp_plugin from quantum.plugins.nicira.nicira_nvp_plugin import nvp_cluster from quantum.plugins.nicira.nicira_nvp_plugin import NvpApiClient from quantum.plugins.nicira.nicira_nvp_plugin import nvplib +from quantum.tests import base from quantum.tests.unit.nicira import fake_nvpapiclient from quantum.tests.unit import test_api_v2 @@ -32,7 +31,7 @@ NICIRA_PKG_PATH = nvp_plugin.__name__ _uuid = test_api_v2._uuid -class NvplibTestCase(testtools.TestCase): +class NvplibTestCase(base.BaseTestCase): def setUp(self): # mock nvp api client diff --git a/quantum/tests/unit/openvswitch/test_ovs_db.py b/quantum/tests/unit/openvswitch/test_ovs_db.py index 452e1c5abf..85768c106c 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_db.py +++ b/quantum/tests/unit/openvswitch/test_ovs_db.py @@ -19,6 +19,7 @@ from testtools import matchers from quantum.common import exceptions as q_exc from quantum.db import api as db from quantum.plugins.openvswitch import ovs_db_v2 +from quantum.tests import base from quantum.tests.unit import test_db_plugin as test_plugin PHYS_NET = 'physnet1' @@ -34,7 +35,7 @@ TUNNEL_RANGES = [(TUN_MIN, TUN_MAX)] UPDATED_TUNNEL_RANGES = [(TUN_MIN + 5, TUN_MAX + 5)] -class VlanAllocationsTest(testtools.TestCase): +class VlanAllocationsTest(base.BaseTestCase): def setUp(self): super(VlanAllocationsTest, self).setUp() ovs_db_v2.initialize() @@ -178,7 +179,7 @@ class VlanAllocationsTest(testtools.TestCase): ovs_db_v2.sync_vlan_allocations({}) -class TunnelAllocationsTest(testtools.TestCase): +class TunnelAllocationsTest(base.BaseTestCase): def setUp(self): super(TunnelAllocationsTest, self).setUp() ovs_db_v2.initialize() diff --git a/quantum/tests/unit/openvswitch/test_ovs_defaults.py b/quantum/tests/unit/openvswitch/test_ovs_defaults.py index 898a035faa..4eabe0fea1 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_defaults.py +++ b/quantum/tests/unit/openvswitch/test_ovs_defaults.py @@ -13,15 +13,14 @@ # See the License for the specific language governing permissions and # limitations under the License. -import testtools - from oslo.config import cfg #NOTE this import loads tests required options from quantum.plugins.openvswitch.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): def test_defaults(self): self.assertEqual('br-int', cfg.CONF.OVS.integration_bridge) diff --git a/quantum/tests/unit/openvswitch/test_ovs_lib.py b/quantum/tests/unit/openvswitch/test_ovs_lib.py index e3fb81a649..790c756cf1 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_lib.py +++ b/quantum/tests/unit/openvswitch/test_ovs_lib.py @@ -16,13 +16,13 @@ # @author: Dan Wendlandt, Nicira, Inc. import mox -import testtools from quantum.agent.linux import ovs_lib, utils from quantum.openstack.common import uuidutils +from quantum.tests import base -class OVS_Lib_Test(testtools.TestCase): +class OVS_Lib_Test(base.BaseTestCase): """ A test suite to excercise the OVS libraries shared by Quantum agents. Note: these tests do not actually execute ovs-* utilities, and thus diff --git a/quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py b/quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py index 0744f9c5b5..41e9bc4a6a 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py +++ b/quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py @@ -19,13 +19,14 @@ from oslo.config import cfg import testtools from quantum.plugins.openvswitch.agent import ovs_quantum_agent +from quantum.tests import base NOTIFIER = ('quantum.plugins.openvswitch.' 'ovs_quantum_plugin.AgentNotifierApi') -class CreateAgentConfigMap(testtools.TestCase): +class CreateAgentConfigMap(base.BaseTestCase): def test_create_agent_config_map_succeeds(self): self.assertTrue(ovs_quantum_agent.create_agent_config_map(cfg.CONF)) @@ -38,7 +39,7 @@ class CreateAgentConfigMap(testtools.TestCase): ovs_quantum_agent.create_agent_config_map(cfg.CONF) -class TestOvsQuantumAgent(testtools.TestCase): +class TestOvsQuantumAgent(base.BaseTestCase): def setUp(self): super(TestOvsQuantumAgent, self).setUp() diff --git a/quantum/tests/unit/openvswitch/test_ovs_rpcapi.py b/quantum/tests/unit/openvswitch/test_ovs_rpcapi.py index 32224335b9..93207ca41b 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_rpcapi.py +++ b/quantum/tests/unit/openvswitch/test_ovs_rpcapi.py @@ -19,7 +19,6 @@ Unit Tests for openvswitch rpc """ import stubout -import testtools from quantum.agent import rpc as agent_rpc from quantum.common import topics @@ -27,9 +26,10 @@ from quantum.openstack.common import context from quantum.openstack.common import rpc from quantum.plugins.openvswitch.common import constants from quantum.plugins.openvswitch import ovs_quantum_plugin as povs +from quantum.tests import base -class rpcApiTestCase(testtools.TestCase): +class rpcApiTestCase(base.BaseTestCase): def _test_ovs_api(self, rpcapi, topic, method, rpc_method, **kwargs): ctxt = context.RequestContext('fake_user', 'fake_project') diff --git a/quantum/tests/unit/openvswitch/test_ovs_tunnel.py b/quantum/tests/unit/openvswitch/test_ovs_tunnel.py index 79460590cb..aaf918f055 100644 --- a/quantum/tests/unit/openvswitch/test_ovs_tunnel.py +++ b/quantum/tests/unit/openvswitch/test_ovs_tunnel.py @@ -18,7 +18,6 @@ import mox from oslo.config import cfg -import testtools from quantum.agent.linux import ip_lib from quantum.agent.linux import ovs_lib @@ -27,6 +26,7 @@ from quantum.agent import rpc from quantum.openstack.common import log from quantum.plugins.openvswitch.agent import ovs_quantum_agent from quantum.plugins.openvswitch.common import constants +from quantum.tests import base # Useful global dummy variables. @@ -59,7 +59,7 @@ class DummyVlanBinding: self.vlan_id = vlan_id -class TunnelTest(testtools.TestCase): +class TunnelTest(base.BaseTestCase): def setUp(self): super(TunnelTest, self).setUp() diff --git a/quantum/tests/unit/ryu/test_defaults.py b/quantum/tests/unit/ryu/test_defaults.py index 40fc8d679b..91442650c3 100644 --- a/quantum/tests/unit/ryu/test_defaults.py +++ b/quantum/tests/unit/ryu/test_defaults.py @@ -16,13 +16,13 @@ # under the License. from oslo.config import cfg -import testtools #NOTE this import loads tests required options from quantum.plugins.ryu.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): """Configuration file Tests""" def test_defaults(self): self.assertEqual('br-int', cfg.CONF.OVS.integration_bridge) diff --git a/quantum/tests/unit/ryu/test_ryu_agent.py b/quantum/tests/unit/ryu/test_ryu_agent.py index 0ebd6aeacd..223c4afe94 100644 --- a/quantum/tests/unit/ryu/test_ryu_agent.py +++ b/quantum/tests/unit/ryu/test_ryu_agent.py @@ -17,14 +17,13 @@ from contextlib import nested import httplib import mock -from oslo.config import cfg -import testtools from quantum.openstack.common import importutils +from quantum.tests import base from quantum.tests.unit.ryu import fake_ryu -class RyuAgentTestCase(testtools.TestCase): +class RyuAgentTestCase(base.BaseTestCase): _AGENT_NAME = 'quantum.plugins.ryu.agent.ryu_quantum_agent' diff --git a/quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py b/quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py index 2d5a2ee11f..9b36cd4f75 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py +++ b/quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py @@ -17,12 +17,12 @@ # @author: Mark McClain, DreamHost import mock -import testtools from quantum.plugins.services.agent_loadbalancer.agent import api +from quantum.tests import base -class TestApiCache(testtools.TestCase): +class TestApiCache(base.BaseTestCase): def setUp(self): super(TestApiCache, self).setUp() self.addCleanup(mock.patch.stopall) diff --git a/quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py b/quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py index a33a36519e..52342604c3 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py +++ b/quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py @@ -22,9 +22,10 @@ from oslo.config import cfg import testtools from quantum.plugins.services.agent_loadbalancer import agent +from quantum.tests import base -class TestLbaasService(testtools.TestCase): +class TestLbaasService(base.BaseTestCase): def setUp(self): super(TestLbaasService, self).setUp() self.addCleanup(cfg.CONF.reset) diff --git a/quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py b/quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py index b025809c05..e284a3126d 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py +++ b/quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py @@ -19,12 +19,12 @@ import contextlib import mock -import testtools from quantum.plugins.services.agent_loadbalancer.agent import manager +from quantum.tests import base -class TestLogicalDeviceCache(testtools.TestCase): +class TestLogicalDeviceCache(base.BaseTestCase): def setUp(self): super(TestLogicalDeviceCache, self).setUp() self.cache = manager.LogicalDeviceCache() @@ -131,7 +131,7 @@ class TestLogicalDeviceCache(testtools.TestCase): self.assertEqual(self.cache.get_pool_ids(), ['pool_id']) -class TestManager(testtools.TestCase): +class TestManager(base.BaseTestCase): def setUp(self): super(TestManager, self).setUp() self.addCleanup(mock.patch.stopall) diff --git a/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py b/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py index 4b95a23106..f07d383cde 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py +++ b/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py @@ -19,14 +19,14 @@ import contextlib import mock -import testtools from oslo.config import cfg as config from quantum.plugins.services.agent_loadbalancer.drivers.haproxy import cfg +from quantum.tests import base -class TestHaproxyCfg(testtools.TestCase): +class TestHaproxyCfg(base.BaseTestCase): def test_save_config(self): with contextlib.nested( mock.patch('quantum.plugins.services.agent_loadbalancer.' diff --git a/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py b/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py index ccb4c91d24..b7cb98042c 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py +++ b/quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py @@ -18,15 +18,15 @@ import contextlib import mock -import testtools from quantum.common import exceptions from quantum.plugins.services.agent_loadbalancer.drivers.haproxy import ( namespace_driver ) +from quantum.tests import base -class TestHaproxyNSDriver(testtools.TestCase): +class TestHaproxyNSDriver(base.BaseTestCase): def setUp(self): super(TestHaproxyNSDriver, self).setUp() diff --git a/quantum/tests/unit/services/agent_loadbalancer/test_plugin.py b/quantum/tests/unit/services/agent_loadbalancer/test_plugin.py index a4289ef0cf..f2b0f229ba 100644 --- a/quantum/tests/unit/services/agent_loadbalancer/test_plugin.py +++ b/quantum/tests/unit/services/agent_loadbalancer/test_plugin.py @@ -18,12 +18,12 @@ # @author: Mark McClain, DreamHost import mock -import testtools from quantum import context from quantum import manager from quantum.plugins.common import constants from quantum.plugins.services.agent_loadbalancer import plugin +from quantum.tests import base from quantum.tests.unit.db.loadbalancer import test_db_loadbalancer @@ -171,7 +171,7 @@ class TestLoadBalancerCallbacks(TestLoadBalancerPluginBase): ) -class TestLoadBalancerAgentApi(testtools.TestCase): +class TestLoadBalancerAgentApi(base.BaseTestCase): def setUp(self): super(TestLoadBalancerAgentApi, self).setUp() self.addCleanup(mock.patch.stopall) diff --git a/quantum/tests/unit/test_agent_config.py b/quantum/tests/unit/test_agent_config.py index 5a01c43e15..4cb3c48bff 100644 --- a/quantum/tests/unit/test_agent_config.py +++ b/quantum/tests/unit/test_agent_config.py @@ -15,9 +15,8 @@ # License for the specific language governing permissions and limitations # under the License. -import testtools - from quantum.agent.common import config +from quantum.tests import base def test_setup_conf(): @@ -25,7 +24,7 @@ def test_setup_conf(): assert conf.state_path.endswith('/var/lib/quantum') -class TestRootHelper(testtools.TestCase): +class TestRootHelper(base.BaseTestCase): def test_agent_root_helper(self): conf = config.setup_conf() diff --git a/quantum/tests/unit/test_agent_linux_utils.py b/quantum/tests/unit/test_agent_linux_utils.py index bd94dd6a9d..80ada7de3f 100644 --- a/quantum/tests/unit/test_agent_linux_utils.py +++ b/quantum/tests/unit/test_agent_linux_utils.py @@ -17,12 +17,12 @@ import fixtures import mock -import testtools from quantum.agent.linux import utils +from quantum.tests import base -class AgentUtilsExecuteTest(testtools.TestCase): +class AgentUtilsExecuteTest(base.BaseTestCase): def setUp(self): super(AgentUtilsExecuteTest, self).setUp() self.root_helper = "echo" @@ -63,7 +63,7 @@ class AgentUtilsExecuteTest(testtools.TestCase): self.assertEqual(result, "%s\n" % self.test_file) -class AgentUtilsGetInterfaceMAC(testtools.TestCase): +class AgentUtilsGetInterfaceMAC(base.BaseTestCase): def test_get_interface_mac(self): expect_val = '01:02:03:04:05:06' with mock.patch('fcntl.ioctl') as ioctl: @@ -74,7 +74,7 @@ class AgentUtilsGetInterfaceMAC(testtools.TestCase): self.assertEqual(actual_val, expect_val) -class AgentUtilsReplaceFile(testtools.TestCase): +class AgentUtilsReplaceFile(base.BaseTestCase): def test_replace_file(self): # make file to replace with mock.patch('tempfile.NamedTemporaryFile') as ntf: diff --git a/quantum/tests/unit/test_agent_netns_cleanup.py b/quantum/tests/unit/test_agent_netns_cleanup.py index 45f284837c..243b93775a 100644 --- a/quantum/tests/unit/test_agent_netns_cleanup.py +++ b/quantum/tests/unit/test_agent_netns_cleanup.py @@ -17,18 +17,18 @@ import mock from oslo.config import cfg -import testtools from quantum.agent import netns_cleanup_util as util +from quantum.tests import base -class TestNullDelegate(testtools.TestCase): +class TestNullDelegate(base.BaseTestCase): def test_getattribute(self): null_delegate = util.NullDelegate() self.assertIsNone(null_delegate.test()) -class TestNetnsCleanup(testtools.TestCase): +class TestNetnsCleanup(base.BaseTestCase): def setUp(self): super(TestNetnsCleanup, self).setUp() self.addCleanup(cfg.CONF.reset) diff --git a/quantum/tests/unit/test_agent_ovs_cleanup.py b/quantum/tests/unit/test_agent_ovs_cleanup.py index 6ab4b0fdde..8983a35a26 100644 --- a/quantum/tests/unit/test_agent_ovs_cleanup.py +++ b/quantum/tests/unit/test_agent_ovs_cleanup.py @@ -19,15 +19,15 @@ import contextlib import itertools import mock from oslo.config import cfg -import testtools from quantum.agent.linux import ip_lib from quantum.agent.linux import ovs_lib from quantum.agent import ovs_cleanup_util as util from quantum.openstack.common import uuidutils +from quantum.tests import base -class TestOVSCleanup(testtools.TestCase): +class TestOVSCleanup(base.BaseTestCase): def setUp(self): super(TestOVSCleanup, self).setUp() self.addCleanup(cfg.CONF.reset) diff --git a/quantum/tests/unit/test_agent_rpc.py b/quantum/tests/unit/test_agent_rpc.py index b99a202c6f..55a9155042 100644 --- a/quantum/tests/unit/test_agent_rpc.py +++ b/quantum/tests/unit/test_agent_rpc.py @@ -17,13 +17,13 @@ import mock from oslo.config import cfg -import testtools from quantum.agent import rpc from quantum.openstack.common import context +from quantum.tests import base -class AgentRPCPluginApi(testtools.TestCase): +class AgentRPCPluginApi(base.BaseTestCase): def _test_rpc_call(self, method): agent = rpc.PluginApi('fake_topic') ctxt = context.RequestContext('fake_user', 'fake_project') @@ -47,7 +47,7 @@ class AgentRPCPluginApi(testtools.TestCase): self._test_rpc_call('tunnel_sync') -class AgentRPCMethods(testtools.TestCase): +class AgentRPCMethods(base.BaseTestCase): def test_create_consumers(self): dispatcher = mock.Mock() expected = [ diff --git a/quantum/tests/unit/test_api_api_common.py b/quantum/tests/unit/test_api_api_common.py index a3863bc5cc..a936361a70 100644 --- a/quantum/tests/unit/test_api_api_common.py +++ b/quantum/tests/unit/test_api_api_common.py @@ -18,18 +18,18 @@ # @author: Zhongyue Luo, Intel Corporation. # -import testtools from testtools import matchers from webob import exc from quantum.api import api_common as common +from quantum.tests import base class FakeController(common.QuantumController): _resource_name = 'fake' -class APICommonTestCase(testtools.TestCase): +class APICommonTestCase(base.BaseTestCase): def setUp(self): super(APICommonTestCase, self).setUp() self.controller = FakeController(None) diff --git a/quantum/tests/unit/test_api_v2.py b/quantum/tests/unit/test_api_v2.py index 2ed703bd12..c66495218d 100644 --- a/quantum/tests/unit/test_api_v2.py +++ b/quantum/tests/unit/test_api_v2.py @@ -20,7 +20,6 @@ import urlparse import mock from oslo.config import cfg -import testtools from testtools import matchers import webob from webob import exc @@ -29,7 +28,7 @@ import webtest from quantum.api import api_common from quantum.api.extensions import PluginAwareExtensionManager from quantum.api.v2 import attributes -from quantum.api.v2 import base +from quantum.api.v2 import base as v2_base from quantum.api.v2 import router from quantum.common import config from quantum.common import constants @@ -38,6 +37,7 @@ from quantum import context from quantum.manager import QuantumManager from quantum.openstack.common.notifier import api as notifer_api from quantum.openstack.common import uuidutils +from quantum.tests import base from quantum.tests.unit import testlib_api from quantum import wsgi @@ -68,7 +68,7 @@ def _get_path(resource, id=None, action=None, fmt=None): return path -class ResourceIndexTestCase(testtools.TestCase): +class ResourceIndexTestCase(base.BaseTestCase): def test_index_json(self): index = webtest.TestApp(router.Index({'foo': 'bar'})) res = index.get('') @@ -93,7 +93,7 @@ class ResourceIndexTestCase(testtools.TestCase): self.assertTrue(link['rel'] == 'self') -class APIv2TestBase(testtools.TestCase): +class APIv2TestBase(base.BaseTestCase): def setUp(self): super(APIv2TestBase, self).setUp() @@ -1105,7 +1105,7 @@ class JSONV2TestCase(APIv2TestBase, testlib_api.WebTestCase): self.assertEqual(res.status_int, 400) -class SubresourceTest(testtools.TestCase): +class SubresourceTest(base.BaseTestCase): def setUp(self): super(SubresourceTest, self).setUp() @@ -1206,12 +1206,12 @@ class XMLV2TestCase(JSONV2TestCase): fmt = 'xml' -class V2Views(testtools.TestCase): +class V2Views(base.BaseTestCase): def _view(self, keys, collection, resource): data = dict((key, 'value') for key in keys) data['fake'] = 'value' attr_info = attributes.RESOURCE_ATTRIBUTE_MAP[collection] - controller = base.Controller(None, collection, resource, attr_info) + controller = v2_base.Controller(None, collection, resource, attr_info) res = controller._view(data) self.assertTrue('fake' not in res) for key in keys: @@ -1329,7 +1329,7 @@ class QuotaTest(APIv2TestBase): self.assertEqual(res.status_int, exc.HTTPCreated.code) -class ExtensionTestCase(testtools.TestCase): +class ExtensionTestCase(base.BaseTestCase): def setUp(self): super(ExtensionTestCase, self).setUp() plugin = 'quantum.quantum_plugin_base_v2.QuantumPluginBaseV2' @@ -1419,7 +1419,7 @@ class TestSubresourcePlugin(): return -class ListArgsTestCase(testtools.TestCase): +class ListArgsTestCase(base.BaseTestCase): def test_list_args(self): path = '/?fields=4&foo=3&fields=2&bar=1' request = webob.Request.blank(path) @@ -1433,7 +1433,7 @@ class ListArgsTestCase(testtools.TestCase): self.assertEqual([], api_common.list_args(request, 'fields')) -class FiltersTestCase(testtools.TestCase): +class FiltersTestCase(base.BaseTestCase): def test_all_skip_args(self): path = '/?fields=4&fields=3&fields=2&fields=1' request = webob.Request.blank(path) @@ -1481,7 +1481,7 @@ class FiltersTestCase(testtools.TestCase): self.assertEqual(actual_val, expect_val) -class CreateResourceTestCase(testtools.TestCase): +class CreateResourceTestCase(base.BaseTestCase): def test_resource_creation(self): - resource = base.create_resource('fakes', 'fake', None, {}) + resource = v2_base.create_resource('fakes', 'fake', None, {}) self.assertIsInstance(resource, webob.dec.wsgify) diff --git a/quantum/tests/unit/test_api_v2_resource.py b/quantum/tests/unit/test_api_v2_resource.py index e89b577eef..7328c1c6d0 100644 --- a/quantum/tests/unit/test_api_v2_resource.py +++ b/quantum/tests/unit/test_api_v2_resource.py @@ -19,17 +19,17 @@ # import mock -import testtools from webob import exc import webtest from quantum.api.v2 import resource as wsgi_resource from quantum.common import exceptions as q_exc from quantum import context +from quantum.tests import base from quantum import wsgi -class RequestTestCase(testtools.TestCase): +class RequestTestCase(base.BaseTestCase): def setUp(self): super(RequestTestCase, self).setUp() self.req = wsgi_resource.Request({'foo': 'bar'}) @@ -99,7 +99,7 @@ class RequestTestCase(testtools.TestCase): self.assertTrue(self.req.context.is_admin) -class ResourceTestCase(testtools.TestCase): +class ResourceTestCase(base.BaseTestCase): def test_unmapped_quantum_error(self): controller = mock.MagicMock() controller.test.side_effect = q_exc.QuantumException() diff --git a/quantum/tests/unit/test_attributes.py b/quantum/tests/unit/test_attributes.py index 9863cbbe5c..d91720ef32 100644 --- a/quantum/tests/unit/test_attributes.py +++ b/quantum/tests/unit/test_attributes.py @@ -19,9 +19,10 @@ import testtools from quantum.api.v2 import attributes from quantum.common import exceptions as q_exc +from quantum.tests import base -class TestAttributes(testtools.TestCase): +class TestAttributes(base.BaseTestCase): def _construct_dict_and_constraints(self): """ Constructs a test dictionary and a definition of constraints. @@ -537,7 +538,7 @@ class TestAttributes(testtools.TestCase): self.assertIsNone(msg) -class TestConvertToBoolean(testtools.TestCase): +class TestConvertToBoolean(base.BaseTestCase): def test_convert_to_boolean_bool(self): self.assertIs(attributes.convert_to_boolean(True), True) @@ -562,7 +563,7 @@ class TestConvertToBoolean(testtools.TestCase): '7') -class TestConvertToInt(testtools.TestCase): +class TestConvertToInt(base.BaseTestCase): def test_convert_to_int_int(self): self.assertEqual(attributes.convert_to_int(-1), -1) @@ -596,7 +597,7 @@ class TestConvertToInt(testtools.TestCase): value, attributes.convert_none_to_empty_list(value)) -class TestConvertKvp(testtools.TestCase): +class TestConvertKvp(base.BaseTestCase): def test_convert_kvp_list_to_dict_succeeds_for_missing_values(self): result = attributes.convert_kvp_list_to_dict(['True']) @@ -628,7 +629,7 @@ class TestConvertKvp(testtools.TestCase): self.assertEqual(['a', 'a=a'], result) -class TestConvertToList(testtools.TestCase): +class TestConvertToList(base.BaseTestCase): def test_convert_to_empty_list(self): for item in (None, [], (), {}): diff --git a/quantum/tests/unit/test_auth.py b/quantum/tests/unit/test_auth.py index 1f0a69108d..14e6200775 100644 --- a/quantum/tests/unit/test_auth.py +++ b/quantum/tests/unit/test_auth.py @@ -1,10 +1,27 @@ -import testtools +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2012 OpenStack LLC +# All Rights Reserved. +# +# 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. + import webob from quantum import auth +from quantum.tests import base -class QuantumKeystoneContextTestCase(testtools.TestCase): +class QuantumKeystoneContextTestCase(base.BaseTestCase): def setUp(self): super(QuantumKeystoneContextTestCase, self).setUp() diff --git a/quantum/tests/unit/test_common_utils.py b/quantum/tests/unit/test_common_utils.py index 64ab401c54..d3cfd397f5 100644 --- a/quantum/tests/unit/test_common_utils.py +++ b/quantum/tests/unit/test_common_utils.py @@ -15,9 +15,10 @@ import testtools from quantum.common import utils +from quantum.tests import base -class TestParseMappings(testtools.TestCase): +class TestParseMappings(base.BaseTestCase): def parse(self, mapping_list, unique_values=True): return utils.parse_mappings(mapping_list, unique_values) diff --git a/quantum/tests/unit/test_config.py b/quantum/tests/unit/test_config.py index 5ae77bdec6..64f2e7c757 100644 --- a/quantum/tests/unit/test_config.py +++ b/quantum/tests/unit/test_config.py @@ -14,14 +14,14 @@ # limitations under the License. import os -import testtools from oslo.config import cfg from quantum.common import config +from quantum.tests import base -class ConfigurationTest(testtools.TestCase): +class ConfigurationTest(base.BaseTestCase): def test_defaults(self): self.assertEqual('0.0.0.0', cfg.CONF.bind_host) diff --git a/quantum/tests/unit/test_db.py b/quantum/tests/unit/test_db.py index 0f7d9b2692..9a9e6456ee 100644 --- a/quantum/tests/unit/test_db.py +++ b/quantum/tests/unit/test_db.py @@ -18,12 +18,12 @@ import fixtures import mock from oslo.config import cfg -import testtools import quantum.db.api as db +from quantum.tests import base -class DBTestCase(testtools.TestCase): +class DBTestCase(base.BaseTestCase): def setUp(self): super(DBTestCase, self).setUp() cfg.CONF.set_override('sql_max_retries', 1, 'DATABASE') diff --git a/quantum/tests/unit/test_db_migration.py b/quantum/tests/unit/test_db_migration.py index c9573e0644..114f3aae6d 100644 --- a/quantum/tests/unit/test_db_migration.py +++ b/quantum/tests/unit/test_db_migration.py @@ -20,13 +20,13 @@ import sys import mock -import testtools from quantum.db import migration from quantum.db.migration import cli +from quantum.tests import base -class TestDbMigration(testtools.TestCase): +class TestDbMigration(base.BaseTestCase): def test_should_run_plugin_in_list(self): self.assertTrue(migration.should_run('foo', ['foo', 'bar'])) self.assertFalse(migration.should_run('foo', ['bar'])) @@ -35,7 +35,7 @@ class TestDbMigration(testtools.TestCase): self.assertTrue(migration.should_run('foo', ['*'])) -class TestCli(testtools.TestCase): +class TestCli(base.BaseTestCase): def setUp(self): super(TestCli, self).setUp() self.do_alembic_cmd_p = mock.patch.object(cli, 'do_alembic_command') diff --git a/quantum/tests/unit/test_db_plugin.py b/quantum/tests/unit/test_db_plugin.py index 3707d50777..b8b61d5907 100644 --- a/quantum/tests/unit/test_db_plugin.py +++ b/quantum/tests/unit/test_db_plugin.py @@ -43,6 +43,7 @@ from quantum.db import db_base_plugin_v2 from quantum.db import models_v2 from quantum.manager import QuantumManager from quantum.openstack.common import timeutils +from quantum.tests import base from quantum.tests.unit import test_extensions from quantum.tests.unit import testlib_api @@ -80,6 +81,7 @@ class QuantumDbPluginV2TestCase(testlib_api.WebTestCase): def setUp(self, plugin=None, service_plugins=None): super(QuantumDbPluginV2TestCase, self).setUp() + # NOTE(jkoelker) for a 'pluggable' framework, Quantum sure # doesn't like when the plugin changes ;) db._ENGINE = None @@ -3431,7 +3433,7 @@ class TestSubnetsV2(QuantumDbPluginV2TestCase): self.assertEqual(res.status_int, 204) -class DbModelTestCase(testtools.TestCase): +class DbModelTestCase(base.BaseTestCase): """ DB model tests """ def test_repr(self): """ testing the string representation of 'model' classes """ diff --git a/quantum/tests/unit/test_db_rpc_base.py b/quantum/tests/unit/test_db_rpc_base.py index 136973e37c..7039aa3390 100644 --- a/quantum/tests/unit/test_db_rpc_base.py +++ b/quantum/tests/unit/test_db_rpc_base.py @@ -14,12 +14,12 @@ # limitations under the License. import mock -import testtools from quantum.db import dhcp_rpc_base +from quantum.tests import base -class TestDhcpRpcCallackMixin(testtools.TestCase): +class TestDhcpRpcCallackMixin(base.BaseTestCase): def setUp(self): super(TestDhcpRpcCallackMixin, self).setUp() diff --git a/quantum/tests/unit/test_debug_commands.py b/quantum/tests/unit/test_debug_commands.py index fb76e76fff..4ece229777 100644 --- a/quantum/tests/unit/test_debug_commands.py +++ b/quantum/tests/unit/test_debug_commands.py @@ -19,12 +19,12 @@ import socket import mock from oslo.config import cfg -import testtools from quantum.agent.common import config from quantum.agent.linux import interface from quantum.debug import commands from quantum.debug.debug_agent import DEVICE_OWNER_PROBE, QuantumDebugAgent +from quantum.tests import base class MyApp(object): @@ -32,7 +32,7 @@ class MyApp(object): self.stdout = _stdout -class TestDebugCommands(testtools.TestCase): +class TestDebugCommands(base.BaseTestCase): def setUp(self): super(TestDebugCommands, self).setUp() cfg.CONF.register_opts(interface.OPTS) diff --git a/quantum/tests/unit/test_dhcp_agent.py b/quantum/tests/unit/test_dhcp_agent.py index da7262a6ea..fdfde73275 100644 --- a/quantum/tests/unit/test_dhcp_agent.py +++ b/quantum/tests/unit/test_dhcp_agent.py @@ -14,6 +14,7 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. + import os import socket import sys @@ -32,6 +33,7 @@ from quantum.agent.linux import interface from quantum.common import constants from quantum.common import exceptions from quantum.openstack.common import jsonutils +from quantum.tests import base ROOTDIR = os.path.dirname(os.path.dirname(__file__)) @@ -108,7 +110,7 @@ fake_down_network = FakeModel('12345678-dddd-dddd-1234567890ab', ports=[]) -class TestDhcpAgent(testtools.TestCase): +class TestDhcpAgent(base.BaseTestCase): def setUp(self): super(TestDhcpAgent, self).setUp() cfg.CONF.register_opts(dhcp_agent.DeviceManager.OPTS) @@ -323,7 +325,7 @@ class TestDhcpAgent(testtools.TestCase): self.assertFalse(dhcp.needs_resync) -class TestDhcpAgentEventHandler(testtools.TestCase): +class TestDhcpAgentEventHandler(base.BaseTestCase): def setUp(self): super(TestDhcpAgentEventHandler, self).setUp() cfg.CONF.register_opts(dhcp_agent.DeviceManager.OPTS) @@ -638,7 +640,7 @@ class TestDhcpAgentEventHandler(testtools.TestCase): self.assertEqual(self.call_driver.call_count, 0) -class TestDhcpPluginApiProxy(testtools.TestCase): +class TestDhcpPluginApiProxy(base.BaseTestCase): def setUp(self): super(TestDhcpPluginApiProxy, self).setUp() self.proxy = dhcp_agent.DhcpPluginApi('foo', {}) @@ -707,7 +709,7 @@ class TestDhcpPluginApiProxy(testtools.TestCase): host='foo') -class TestNetworkCache(testtools.TestCase): +class TestNetworkCache(base.BaseTestCase): def test_put_network(self): nc = dhcp_agent.NetworkCache() nc.put(fake_network) @@ -815,7 +817,7 @@ class TestNetworkCache(testtools.TestCase): self.assertEqual(nc.get_port_by_id(fake_port1.id), fake_port1) -class TestDeviceManager(testtools.TestCase): +class TestDeviceManager(base.BaseTestCase): def setUp(self): super(TestDeviceManager, self).setUp() cfg.CONF.register_opts(dhcp_agent.DeviceManager.OPTS) @@ -1010,7 +1012,7 @@ class TestDeviceManager(testtools.TestCase): self.assertEqual(dh.get_device_id(fake_network), expected) -class TestDhcpLeaseRelay(testtools.TestCase): +class TestDhcpLeaseRelay(base.BaseTestCase): def setUp(self): super(TestDhcpLeaseRelay, self).setUp() cfg.CONF.register_opts(dhcp_agent.DhcpLeaseRelay.OPTS) @@ -1135,7 +1137,7 @@ class TestDhcpLeaseRelay(testtools.TestCase): relay._handler)]) -class TestDictModel(testtools.TestCase): +class TestDictModel(base.BaseTestCase): def test_basic_dict(self): d = dict(a=1, b=2) diff --git a/quantum/tests/unit/test_extension_extended_attribute.py b/quantum/tests/unit/test_extension_extended_attribute.py index d738326e40..831a933123 100644 --- a/quantum/tests/unit/test_extension_extended_attribute.py +++ b/quantum/tests/unit/test_extension_extended_attribute.py @@ -20,7 +20,6 @@ Unit tests for extension extended attribute """ from oslo.config import cfg -import testtools import webob.exc as webexc import quantum @@ -29,6 +28,7 @@ from quantum.common import config from quantum import manager from quantum.plugins.common import constants from quantum.plugins.openvswitch import ovs_quantum_plugin +from quantum.tests import base from quantum.tests.unit.extensions import extendedattribute as extattr from quantum.tests.unit import test_api_v2 from quantum.tests.unit import testlib_api @@ -66,7 +66,7 @@ class ExtensionExtendedAttributeTestPlugin( return self.objh[id] -class ExtensionExtendedAttributeTestCase(testtools.TestCase): +class ExtensionExtendedAttributeTestCase(base.BaseTestCase): def setUp(self): super(ExtensionExtendedAttributeTestCase, self).setUp() plugin = ( diff --git a/quantum/tests/unit/test_extensions.py b/quantum/tests/unit/test_extensions.py index 9861da3e94..80dc099f15 100644 --- a/quantum/tests/unit/test_extensions.py +++ b/quantum/tests/unit/test_extensions.py @@ -18,7 +18,6 @@ import os import routes -import testtools import webob import webtest @@ -28,6 +27,7 @@ from quantum.db import db_base_plugin_v2 from quantum.openstack.common import jsonutils from quantum.openstack.common import log as logging from quantum.plugins.common import constants +from quantum.tests import base from quantum.tests.unit import extension_stubs as ext_stubs import quantum.tests.unit.extensions from quantum.tests.unit import testlib_api @@ -65,7 +65,7 @@ class FakePluginWithExtension(db_base_plugin_v2.QuantumDbPluginV2): self._log("method_to_support_foxnsox_extension", context) -class ResourceExtensionTest(testtools.TestCase): +class ResourceExtensionTest(base.BaseTestCase): class ResourceExtensionController(wsgi.Controller): @@ -308,7 +308,7 @@ class ResourceExtensionTest(testtools.TestCase): self.assertEqual(404, response.status_int) -class ActionExtensionTest(testtools.TestCase): +class ActionExtensionTest(base.BaseTestCase): def setUp(self): super(ActionExtensionTest, self).setUp() @@ -355,7 +355,7 @@ class ActionExtensionTest(testtools.TestCase): self.assertEqual(404, response.status_int) -class RequestExtensionTest(testtools.TestCase): +class RequestExtensionTest(base.BaseTestCase): def test_headers_can_be_extended(self): def extend_headers(req, res): @@ -422,7 +422,7 @@ class RequestExtensionTest(testtools.TestCase): return _setup_extensions_test_app(manager) -class ExtensionManagerTest(testtools.TestCase): +class ExtensionManagerTest(base.BaseTestCase): def test_invalid_extensions_are_not_registered(self): @@ -442,7 +442,7 @@ class ExtensionManagerTest(testtools.TestCase): self.assertFalse('invalid_extension' in ext_mgr.extensions) -class PluginAwareExtensionManagerTest(testtools.TestCase): +class PluginAwareExtensionManagerTest(base.BaseTestCase): def test_unsupported_extensions_are_not_loaded(self): stub_plugin = ext_stubs.StubPlugin(supported_extensions=["e1", "e3"]) diff --git a/quantum/tests/unit/test_iptables_firewall.py b/quantum/tests/unit/test_iptables_firewall.py index 73ad85e3d4..cbf61c5433 100644 --- a/quantum/tests/unit/test_iptables_firewall.py +++ b/quantum/tests/unit/test_iptables_firewall.py @@ -17,10 +17,10 @@ import mock from mock import call -import testtools from quantum.agent.linux.iptables_firewall import IptablesFirewallDriver from quantum.tests.unit import test_api_v2 +from quantum.tests import base _uuid = test_api_v2._uuid FAKE_PREFIX = {'IPv4': '10.0.0.0/24', @@ -29,7 +29,7 @@ FAKE_IP = {'IPv4': '10.0.0.1', 'IPv6': 'fe80::1'} -class IptablesFirewallTestCase(testtools.TestCase): +class IptablesFirewallTestCase(base.BaseTestCase): def setUp(self): super(IptablesFirewallTestCase, self).setUp() self.utils_exec_p = mock.patch( diff --git a/quantum/tests/unit/test_iptables_manager.py b/quantum/tests/unit/test_iptables_manager.py index e8efa920f7..1ce5af0fd8 100644 --- a/quantum/tests/unit/test_iptables_manager.py +++ b/quantum/tests/unit/test_iptables_manager.py @@ -21,12 +21,12 @@ import inspect import os import mox -import testtools from quantum.agent.linux import iptables_manager +from quantum.tests import base -class IptablesManagerStateFulTestCase(testtools.TestCase): +class IptablesManagerStateFulTestCase(base.BaseTestCase): def setUp(self): super(IptablesManagerStateFulTestCase, self).setUp() @@ -294,7 +294,7 @@ class IptablesManagerStateFulTestCase(testtools.TestCase): self.mox.VerifyAll() -class IptablesManagerStateLessTestCase(testtools.TestCase): +class IptablesManagerStateLessTestCase(base.BaseTestCase): def setUp(self): super(IptablesManagerStateLessTestCase, self).setUp() diff --git a/quantum/tests/unit/test_l3_agent.py b/quantum/tests/unit/test_l3_agent.py index 576b10f61d..80db7f4fe5 100644 --- a/quantum/tests/unit/test_l3_agent.py +++ b/quantum/tests/unit/test_l3_agent.py @@ -19,7 +19,6 @@ import copy import mock from oslo.config import cfg -import testtools from quantum.agent.common import config as agent_config from quantum.agent import l3_agent @@ -27,13 +26,14 @@ from quantum.agent.linux import interface from quantum.common import config as base_config from quantum.common import constants as l3_constants from quantum.openstack.common import uuidutils +from quantum.tests import base _uuid = uuidutils.generate_uuid HOSTNAME = 'myhost' -class TestBasicRouterOperations(testtools.TestCase): +class TestBasicRouterOperations(base.BaseTestCase): def setUp(self): super(TestBasicRouterOperations, self).setUp() diff --git a/quantum/tests/unit/test_l3_plugin.py b/quantum/tests/unit/test_l3_plugin.py index 509ba8fc58..64463141be 100644 --- a/quantum/tests/unit/test_l3_plugin.py +++ b/quantum/tests/unit/test_l3_plugin.py @@ -45,6 +45,7 @@ from quantum.openstack.common import log as logging from quantum.openstack.common.notifier import api as notifier_api from quantum.openstack.common.notifier import test_notifier from quantum.openstack.common import uuidutils +from quantum.tests import base from quantum.tests.unit import test_api_v2 from quantum.tests.unit import test_db_plugin from quantum.tests.unit import test_extensions diff --git a/quantum/tests/unit/test_linux_daemon.py b/quantum/tests/unit/test_linux_daemon.py index 46afea1f7d..57aeaac6c5 100644 --- a/quantum/tests/unit/test_linux_daemon.py +++ b/quantum/tests/unit/test_linux_daemon.py @@ -22,11 +22,12 @@ import mock import testtools from quantum.agent.linux import daemon +from quantum.tests import base FAKE_FD = 8 -class TestPidfile(testtools.TestCase): +class TestPidfile(base.BaseTestCase): def setUp(self): super(TestPidfile, self).setUp() self.os_p = mock.patch.object(daemon, 'os') @@ -94,7 +95,7 @@ class TestPidfile(testtools.TestCase): ['cat', '/proc/34/cmdline'], 'sudo') -class TestDaemon(testtools.TestCase): +class TestDaemon(base.BaseTestCase): def setUp(self): super(TestDaemon, self).setUp() self.os_p = mock.patch.object(daemon, 'os') diff --git a/quantum/tests/unit/test_linux_dhcp.py b/quantum/tests/unit/test_linux_dhcp.py index ee9557cff0..a3ab7fbce7 100644 --- a/quantum/tests/unit/test_linux_dhcp.py +++ b/quantum/tests/unit/test_linux_dhcp.py @@ -20,11 +20,11 @@ import socket import mock from oslo.config import cfg -import testtools from quantum.agent.common import config from quantum.agent.linux import dhcp from quantum.openstack.common import jsonutils +from quantum.tests import base class FakeIPAllocation: @@ -134,7 +134,7 @@ class FakeV4NoGatewayNetwork: ports = [FakePort1()] -class TestDhcpBase(testtools.TestCase): +class TestDhcpBase(base.BaseTestCase): def test_base_abc_error(self): self.assertRaises(TypeError, dhcp.DhcpBase, None) @@ -179,7 +179,7 @@ class LocalChild(dhcp.DhcpLocalProcess): self.called.append('spawn') -class TestBase(testtools.TestCase): +class TestBase(base.BaseTestCase): def setUp(self): super(TestBase, self).setUp() root = os.path.dirname(os.path.dirname(__file__)) diff --git a/quantum/tests/unit/test_linux_external_process.py b/quantum/tests/unit/test_linux_external_process.py index 03dab45d27..3a96f414d7 100644 --- a/quantum/tests/unit/test_linux_external_process.py +++ b/quantum/tests/unit/test_linux_external_process.py @@ -17,12 +17,12 @@ # @author: Mark McClain, DreamHost import mock -import testtools from quantum.agent.linux import external_process as ep +from quantum.tests import base -class TestProcessManager(testtools.TestCase): +class TestProcessManager(base.BaseTestCase): def setUp(self): super(TestProcessManager, self).setUp() self.execute_p = mock.patch('quantum.agent.linux.utils.execute') diff --git a/quantum/tests/unit/test_linux_interface.py b/quantum/tests/unit/test_linux_interface.py index 9e3ed5262b..90d104f4e5 100644 --- a/quantum/tests/unit/test_linux_interface.py +++ b/quantum/tests/unit/test_linux_interface.py @@ -17,7 +17,6 @@ import mock from oslo.config import cfg -import testtools from quantum.agent.common import config from quantum.agent.dhcp_agent import DeviceManager @@ -25,6 +24,7 @@ from quantum.agent.linux import interface from quantum.agent.linux import ip_lib from quantum.agent.linux import utils from quantum.extensions.flavor import (FLAVOR_NETWORK) +from quantum.tests import base class BaseChild(interface.LinuxInterfaceDriver): @@ -57,7 +57,7 @@ class FakePort: network_id = network.id -class TestBase(testtools.TestCase): +class TestBase(base.BaseTestCase): def setUp(self): super(TestBase, self).setUp() root_helper_opt = [ diff --git a/quantum/tests/unit/test_linux_ip_lib.py b/quantum/tests/unit/test_linux_ip_lib.py index cc54ff23cd..0e8832c699 100644 --- a/quantum/tests/unit/test_linux_ip_lib.py +++ b/quantum/tests/unit/test_linux_ip_lib.py @@ -16,10 +16,10 @@ # under the License. import mock -import testtools from quantum.agent.linux import ip_lib from quantum.common import exceptions +from quantum.tests import base NETNS_SAMPLE = [ '12345678-1234-5678-abcd-1234567890ab', @@ -97,7 +97,7 @@ SUBNET_SAMPLE2 = ("10.0.0.0/24 dev tap1d7888a7-10 scope link src 10.0.0.2\n" "10.0.0.0/24 dev qr-23380d11-d2 scope link src 10.0.0.1") -class TestSubProcessBase(testtools.TestCase): +class TestSubProcessBase(base.BaseTestCase): def setUp(self): super(TestSubProcessBase, self).setUp() self.execute_p = mock.patch('quantum.agent.linux.utils.execute') @@ -149,7 +149,7 @@ class TestSubProcessBase(testtools.TestCase): [], 'link', ('list',)) -class TestIpWrapper(testtools.TestCase): +class TestIpWrapper(base.BaseTestCase): def setUp(self): super(TestIpWrapper, self).setUp() self.execute_p = mock.patch.object(ip_lib.IPWrapper, '_execute') @@ -305,7 +305,7 @@ class TestIpWrapper(testtools.TestCase): self.assertEqual(dev.mock_calls, []) -class TestIPDevice(testtools.TestCase): +class TestIPDevice(base.BaseTestCase): def test_eq_same_name(self): dev1 = ip_lib.IPDevice('tap0') dev2 = ip_lib.IPDevice('tap0') @@ -334,7 +334,7 @@ class TestIPDevice(testtools.TestCase): self.assertEqual(str(ip_lib.IPDevice('tap0')), 'tap0') -class TestIPCommandBase(testtools.TestCase): +class TestIPCommandBase(base.BaseTestCase): def setUp(self): super(TestIPCommandBase, self).setUp() self.ip = mock.Mock() @@ -362,7 +362,7 @@ class TestIPCommandBase(testtools.TestCase): [mock.call._as_root('o', 'foo', ('link', ), False)]) -class TestIPDeviceCommandBase(testtools.TestCase): +class TestIPDeviceCommandBase(base.BaseTestCase): def setUp(self): super(TestIPDeviceCommandBase, self).setUp() self.ip_dev = mock.Mock() @@ -376,7 +376,7 @@ class TestIPDeviceCommandBase(testtools.TestCase): self.assertEqual(self.ip_cmd.name, 'eth0') -class TestIPCmdBase(testtools.TestCase): +class TestIPCmdBase(base.BaseTestCase): def setUp(self): super(TestIPCmdBase, self).setUp() self.parent = mock.Mock() @@ -654,7 +654,7 @@ class TestIpNetnsCommand(TestIPCmdBase): root_helper='sudo', check_exit_code=True) -class TestDeviceExists(testtools.TestCase): +class TestDeviceExists(base.BaseTestCase): def test_device_exists(self): with mock.patch.object(ip_lib.IPDevice, '_execute') as _execute: _execute.return_value = LINK_SAMPLE[1] diff --git a/quantum/tests/unit/test_loadbalancer_plugin.py b/quantum/tests/unit/test_loadbalancer_plugin.py index 15418d7c0c..109043d741 100644 --- a/quantum/tests/unit/test_loadbalancer_plugin.py +++ b/quantum/tests/unit/test_loadbalancer_plugin.py @@ -18,7 +18,6 @@ import copy import mock from oslo.config import cfg -import testtools from webob import exc import webtest @@ -29,6 +28,7 @@ from quantum.extensions import loadbalancer from quantum import manager from quantum.openstack.common import uuidutils from quantum.plugins.common import constants +from quantum.tests import base from quantum.tests.unit import test_api_v2 from quantum.tests.unit import test_extensions from quantum.tests.unit import testlib_api diff --git a/quantum/tests/unit/test_metadata_agent.py b/quantum/tests/unit/test_metadata_agent.py index e41cd3d022..ce42edd7a4 100644 --- a/quantum/tests/unit/test_metadata_agent.py +++ b/quantum/tests/unit/test_metadata_agent.py @@ -23,6 +23,7 @@ import testtools import webob from quantum.agent.metadata import agent +from quantum.tests import base class FakeConf(object): @@ -37,7 +38,7 @@ class FakeConf(object): metadata_proxy_shared_secret = 'secret' -class TestMetadataProxyHandler(testtools.TestCase): +class TestMetadataProxyHandler(base.BaseTestCase): def setUp(self): super(TestMetadataProxyHandler, self).setUp() self.qclient_p = mock.patch('quantumclient.v2_0.client.Client') @@ -225,7 +226,7 @@ class TestMetadataProxyHandler(testtools.TestCase): ) -class TestUnixDomainHttpProtocol(testtools.TestCase): +class TestUnixDomainHttpProtocol(base.BaseTestCase): def test_init_empty_client(self): u = agent.UnixDomainHttpProtocol(mock.Mock(), '', mock.Mock()) self.assertEqual(u.client_address, ('<local>', 0)) @@ -235,7 +236,7 @@ class TestUnixDomainHttpProtocol(testtools.TestCase): self.assertEqual(u.client_address, 'foo') -class TestUnixDomainWSGIServer(testtools.TestCase): +class TestUnixDomainWSGIServer(base.BaseTestCase): def setUp(self): super(TestUnixDomainWSGIServer, self).setUp() self.eventlet_p = mock.patch.object(agent, 'eventlet') @@ -274,7 +275,7 @@ class TestUnixDomainWSGIServer(testtools.TestCase): self.assertTrue(len(logging.mock_calls)) -class TestUnixDomainMetadataProxy(testtools.TestCase): +class TestUnixDomainMetadataProxy(base.BaseTestCase): def setUp(self): super(TestUnixDomainMetadataProxy, self).setUp() self.cfg_p = mock.patch.object(agent, 'cfg') diff --git a/quantum/tests/unit/test_metadata_namespace_proxy.py b/quantum/tests/unit/test_metadata_namespace_proxy.py index e30dd306bb..6de98fe92f 100644 --- a/quantum/tests/unit/test_metadata_namespace_proxy.py +++ b/quantum/tests/unit/test_metadata_namespace_proxy.py @@ -23,6 +23,7 @@ import testtools import webob from quantum.agent.metadata import namespace_proxy as ns_proxy +from quantum.tests import base class FakeConf(object): @@ -37,7 +38,7 @@ class FakeConf(object): metadata_proxy_shared_secret = 'secret' -class TestUnixDomainHttpConnection(testtools.TestCase): +class TestUnixDomainHttpConnection(base.BaseTestCase): def test_connect(self): with mock.patch.object(ns_proxy, 'cfg') as cfg: cfg.CONF.metadata_proxy_socket = '/the/path' @@ -55,7 +56,7 @@ class TestUnixDomainHttpConnection(testtools.TestCase): self.assertEqual(conn.timeout, 3) -class TestNetworkMetadataProxyHandler(testtools.TestCase): +class TestNetworkMetadataProxyHandler(base.BaseTestCase): def setUp(self): super(TestNetworkMetadataProxyHandler, self).setUp() self.log_p = mock.patch.object(ns_proxy, 'LOG') @@ -231,7 +232,7 @@ class TestNetworkMetadataProxyHandler(testtools.TestCase): ) -class TestProxyDaemon(testtools.TestCase): +class TestProxyDaemon(base.BaseTestCase): def test_init(self): with mock.patch('quantum.agent.linux.daemon.Pidfile') as pf: pd = ns_proxy.ProxyDaemon('pidfile', 9697, 'net_id', 'router_id') diff --git a/quantum/tests/unit/test_policy.py b/quantum/tests/unit/test_policy.py index 2539d84d43..62421312fc 100644 --- a/quantum/tests/unit/test_policy.py +++ b/quantum/tests/unit/test_policy.py @@ -23,7 +23,6 @@ import urllib2 import fixtures import mock -import testtools import quantum from quantum.common import exceptions @@ -31,9 +30,10 @@ from quantum import context from quantum.openstack.common import importutils from quantum.openstack.common import policy as common_policy from quantum import policy +from quantum.tests import base -class PolicyFileTestCase(testtools.TestCase): +class PolicyFileTestCase(base.BaseTestCase): def setUp(self): super(PolicyFileTestCase, self).setUp() policy.reset() @@ -66,7 +66,7 @@ class PolicyFileTestCase(testtools.TestCase): self.target) -class PolicyTestCase(testtools.TestCase): +class PolicyTestCase(base.BaseTestCase): def setUp(self): super(PolicyTestCase, self).setUp() policy.reset() @@ -160,7 +160,7 @@ class PolicyTestCase(testtools.TestCase): policy.enforce(admin_context, uppercase_action, self.target) -class DefaultPolicyTestCase(testtools.TestCase): +class DefaultPolicyTestCase(base.BaseTestCase): def setUp(self): super(DefaultPolicyTestCase, self).setUp() @@ -196,7 +196,7 @@ class DefaultPolicyTestCase(testtools.TestCase): self.context, "example:noexist", {}) -class QuantumPolicyTestCase(testtools.TestCase): +class QuantumPolicyTestCase(base.BaseTestCase): def setUp(self): super(QuantumPolicyTestCase, self).setUp() diff --git a/quantum/tests/unit/test_quantum_context.py b/quantum/tests/unit/test_quantum_context.py index 169ca3633d..c2bc58564e 100644 --- a/quantum/tests/unit/test_quantum_context.py +++ b/quantum/tests/unit/test_quantum_context.py @@ -16,12 +16,12 @@ # under the License. import mock -import testtools from quantum import context +from quantum.tests import base -class TestQuantumContext(testtools.TestCase): +class TestQuantumContext(base.BaseTestCase): def setUp(self): super(TestQuantumContext, self).setUp() diff --git a/quantum/tests/unit/test_quantum_manager.py b/quantum/tests/unit/test_quantum_manager.py index 0e987f3fdb..f7f60bcda4 100644 --- a/quantum/tests/unit/test_quantum_manager.py +++ b/quantum/tests/unit/test_quantum_manager.py @@ -19,7 +19,6 @@ import os import types import fixtures -import testtools from oslo.config import cfg @@ -28,6 +27,7 @@ from quantum.common.test_lib import test_config from quantum.manager import QuantumManager from quantum.openstack.common import log as logging from quantum.plugins.common import constants +from quantum.tests import base from quantum.tests.unit import dummy_plugin @@ -41,7 +41,7 @@ def etcdir(*p): return os.path.join(ETCDIR, *p) -class QuantumManagerTestCase(testtools.TestCase): +class QuantumManagerTestCase(base.BaseTestCase): def setUp(self): super(QuantumManagerTestCase, self).setUp() diff --git a/quantum/tests/unit/test_quota_per_tenant_ext.py b/quantum/tests/unit/test_quota_per_tenant_ext.py index 838a1fd930..5b1285d668 100644 --- a/quantum/tests/unit/test_quota_per_tenant_ext.py +++ b/quantum/tests/unit/test_quota_per_tenant_ext.py @@ -12,6 +12,7 @@ from quantum.db import api as db from quantum import manager from quantum.plugins.linuxbridge.db import l2network_db_v2 from quantum import quota +from quantum.tests import base from quantum.tests.unit import test_api_v2 from quantum.tests.unit import test_extensions from quantum.tests.unit import testlib_api diff --git a/quantum/tests/unit/test_rootwrap.py b/quantum/tests/unit/test_rootwrap.py index ec667bfb14..47de4f25f7 100644 --- a/quantum/tests/unit/test_rootwrap.py +++ b/quantum/tests/unit/test_rootwrap.py @@ -17,14 +17,14 @@ import os import mock -import testtools from quantum.common import utils from quantum.rootwrap import filters from quantum.rootwrap import wrapper +from quantum.tests import base -class RootwrapTestCase(testtools.TestCase): +class RootwrapTestCase(base.BaseTestCase): def setUp(self): super(RootwrapTestCase, self).setUp() diff --git a/quantum/tests/unit/test_routerserviceinsertion.py b/quantum/tests/unit/test_routerserviceinsertion.py index 21f016db48..d999301950 100644 --- a/quantum/tests/unit/test_routerserviceinsertion.py +++ b/quantum/tests/unit/test_routerserviceinsertion.py @@ -34,6 +34,7 @@ from quantum.db import servicetype_db as st_db from quantum.extensions import routedserviceinsertion as rsi from quantum.extensions import routerservicetype as rst from quantum.plugins.common import constants +from quantum.tests import base from quantum.tests.unit import test_api_v2 from quantum.tests.unit import testlib_api from quantum import wsgi @@ -154,7 +155,7 @@ class RouterServiceInsertionTestPlugin( pass -class RouterServiceInsertionTestCase(testtools.TestCase): +class RouterServiceInsertionTestCase(base.BaseTestCase): def setUp(self): super(RouterServiceInsertionTestCase, self).setUp() plugin = ( diff --git a/quantum/tests/unit/test_security_groups_rpc.py b/quantum/tests/unit/test_security_groups_rpc.py index 1cb0b22abc..f51003143c 100644 --- a/quantum/tests/unit/test_security_groups_rpc.py +++ b/quantum/tests/unit/test_security_groups_rpc.py @@ -21,7 +21,6 @@ import mock from mock import call import mox from oslo.config import cfg -import testtools from quantum.agent import firewall as firewall_base from quantum.agent.linux import iptables_manager @@ -31,6 +30,7 @@ from quantum import context from quantum.db import securitygroups_rpc_base as sg_db_rpc from quantum.extensions import securitygroup as ext_sg from quantum.openstack.common.rpc import proxy +from quantum.tests import base from quantum.tests.unit import test_extension_security_group as test_sg from quantum.tests.unit import test_iptables_firewall as test_fw @@ -370,7 +370,7 @@ class SGServerRpcCallBackMixinTestCaseXML(SGServerRpcCallBackMixinTestCase): fmt = 'xml' -class SGAgentRpcCallBackMixinTestCase(testtools.TestCase): +class SGAgentRpcCallBackMixinTestCase(base.BaseTestCase): def setUp(self): super(SGAgentRpcCallBackMixinTestCase, self).setUp() self.rpc = sg_rpc.SecurityGroupAgentRpcCallbackMixin() @@ -394,7 +394,7 @@ class SGAgentRpcCallBackMixinTestCase(testtools.TestCase): [call.security_groups_provider_updated()]) -class SecurityGroupAgentRpcTestCase(testtools.TestCase): +class SecurityGroupAgentRpcTestCase(base.BaseTestCase): def setUp(self): super(SecurityGroupAgentRpcTestCase, self).setUp() self.agent = sg_rpc.SecurityGroupAgentRpcMixin() @@ -479,7 +479,7 @@ class FakeSGRpcApi(agent_rpc.PluginApi, pass -class SecurityGroupServerRpcApiTestCase(testtools.TestCase): +class SecurityGroupServerRpcApiTestCase(base.BaseTestCase): def setUp(self): super(SecurityGroupServerRpcApiTestCase, self).setUp() self.rpc = FakeSGRpcApi('fake_topic') @@ -502,7 +502,7 @@ class FakeSGNotifierAPI(proxy.RpcProxy, pass -class SecurityGroupAgentRpcApiTestCase(testtools.TestCase): +class SecurityGroupAgentRpcApiTestCase(base.BaseTestCase): def setUp(self): super(SecurityGroupAgentRpcApiTestCase, self).setUp() self.notifier = FakeSGNotifierAPI(topic='fake', @@ -945,7 +945,7 @@ IPTABLES_FILTER_V6_EMPTY = """:%(bn)s-(%(chains)s) - [0:0] FIREWALL_BASE_PACKAGE = 'quantum.agent.linux.iptables_firewall.' -class TestSecurityGroupAgentWithIptables(testtools.TestCase): +class TestSecurityGroupAgentWithIptables(base.BaseTestCase): FIREWALL_DRIVER = FIREWALL_BASE_PACKAGE + 'IptablesFirewallDriver' PHYSDEV_INGRESS = 'physdev-out' PHYSDEV_EGRESS = 'physdev-in' diff --git a/quantum/tests/unit/test_servicetype.py b/quantum/tests/unit/test_servicetype.py index bded462954..c9f3aeeb98 100644 --- a/quantum/tests/unit/test_servicetype.py +++ b/quantum/tests/unit/test_servicetype.py @@ -22,7 +22,6 @@ import logging import mock from oslo.config import cfg -import testtools import webob.exc as webexc import webtest @@ -34,6 +33,7 @@ from quantum.db import servicetype_db from quantum.extensions import servicetype from quantum import manager from quantum.plugins.common import constants +from quantum.tests import base from quantum.tests.unit import dummy_plugin as dp from quantum.tests.unit import test_api_v2 from quantum.tests.unit import test_db_plugin diff --git a/quantum/tests/unit/test_wsgi.py b/quantum/tests/unit/test_wsgi.py index 0c09c1cd4d..3b1999e39b 100644 --- a/quantum/tests/unit/test_wsgi.py +++ b/quantum/tests/unit/test_wsgi.py @@ -15,18 +15,17 @@ # License for the specific language governing permissions and limitations # under the License. -import socket - import mock -import testtools +import socket from quantum.api.v2 import attributes from quantum.common import constants from quantum.common import exceptions as exception +from quantum.tests import base from quantum import wsgi -class TestWSGIServer(testtools.TestCase): +class TestWSGIServer(base.BaseTestCase): """WSGI server tests.""" def test_start_random_port(self): @@ -82,7 +81,7 @@ class TestWSGIServer(testtools.TestCase): ]) -class SerializerTest(testtools.TestCase): +class SerializerTest(base.BaseTestCase): def test_serialize_unknown_content_type(self): """ Test serialize verifies that exception InvalidContentType is raised @@ -108,7 +107,7 @@ class SerializerTest(testtools.TestCase): serializer.get_deserialize_handler, content_type) -class RequestDeserializerTest(testtools.TestCase): +class RequestDeserializerTest(base.BaseTestCase): def test_get_body_deserializer_unknown_content_type(self): """ Test get body deserializer verifies @@ -121,7 +120,7 @@ class RequestDeserializerTest(testtools.TestCase): deserializer.get_body_deserializer, content_type) -class ResponseSerializerTest(testtools.TestCase): +class ResponseSerializerTest(base.BaseTestCase): def setUp(self): super(ResponseSerializerTest, self).setUp() @@ -164,7 +163,7 @@ class ResponseSerializerTest(testtools.TestCase): self.serializer.get_body_serializer, 'application/unknown') -class XMLDeserializerTest(testtools.TestCase): +class XMLDeserializerTest(base.BaseTestCase): def test_default_raise_Maiformed_Exception(self): """ Test verifies that exception MalformedRequestBody is raised @@ -176,7 +175,7 @@ class XMLDeserializerTest(testtools.TestCase): exception.MalformedRequestBody, deserializer.default, data_string) -class JSONDeserializerTest(testtools.TestCase): +class JSONDeserializerTest(base.BaseTestCase): def test_default_raise_Maiformed_Exception(self): """ Test verifies JsonDeserializer.default @@ -189,7 +188,7 @@ class JSONDeserializerTest(testtools.TestCase): exception.MalformedRequestBody, deserializer.default, data_string) -class ResourceTest(testtools.TestCase): +class ResourceTest(base.BaseTestCase): def test_dispatch_unknown_controller_action(self): class Controller(object): def index(self, request, pants=None): @@ -262,7 +261,7 @@ class ResourceTest(testtools.TestCase): self.assertEqual(400, result.status_int) -class XMLDictSerializerTest(testtools.TestCase): +class XMLDictSerializerTest(base.BaseTestCase): def test_xml(self): NETWORK = {'network': {'test': None, 'tenant_id': 'test-tenant', diff --git a/quantum/tests/unit/testlib_api.py b/quantum/tests/unit/testlib_api.py index 67e428c432..3e8f35361f 100644 --- a/quantum/tests/unit/testlib_api.py +++ b/quantum/tests/unit/testlib_api.py @@ -13,9 +13,8 @@ # License for the specific language governing permissions and limitations # under the License. -import testtools - from quantum.api.v2 import attributes +from quantum.tests import base from quantum import wsgi @@ -35,7 +34,7 @@ def create_request(path, body, content_type, method='GET', return req -class WebTestCase(testtools.TestCase): +class WebTestCase(base.BaseTestCase): fmt = 'json' def setUp(self): |