summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HACKING.rst5
-rw-r--r--quantum/plugins/cisco/tests/unit/test_cisco_extension.py6
-rw-r--r--quantum/plugins/cisco/tests/unit/test_database.py9
-rw-r--r--quantum/tests/base.py72
-rw-r--r--quantum/tests/unit/__init__.py3
-rw-r--r--quantum/tests/unit/_test_rootwrap_exec.py4
-rw-r--r--quantum/tests/unit/brocade/test_brocade_vlan.py4
-rw-r--r--quantum/tests/unit/cisco/test_nexus_plugin.py4
-rw-r--r--quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py4
-rw-r--r--quantum/tests/unit/hyperv/test_hyperv_rpcapi.py4
-rw-r--r--quantum/tests/unit/linuxbridge/test_defaults.py4
-rw-r--r--quantum/tests/unit/linuxbridge/test_lb_db.py3
-rw-r--r--quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py5
-rw-r--r--quantum/tests/unit/linuxbridge/test_rpcapi.py4
-rw-r--r--quantum/tests/unit/metaplugin/test_metaplugin.py3
-rw-r--r--quantum/tests/unit/midonet/test_midonet_lib.py4
-rw-r--r--quantum/tests/unit/nec/test_config.py5
-rw-r--r--quantum/tests/unit/nec/test_db.py4
-rw-r--r--quantum/tests/unit/nec/test_ofc_manager.py5
-rw-r--r--quantum/tests/unit/nec/test_pfc_driver.py8
-rw-r--r--quantum/tests/unit/nec/test_trema_driver.py8
-rw-r--r--quantum/tests/unit/nicira/test_defaults.py5
-rw-r--r--quantum/tests/unit/nicira/test_networkgw.py3
-rw-r--r--quantum/tests/unit/nicira/test_nvp_api_common.py6
-rw-r--r--quantum/tests/unit/nicira/test_nvp_api_request.py4
-rw-r--r--quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py4
-rw-r--r--quantum/tests/unit/nicira/test_nvplib.py5
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_db.py5
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_defaults.py5
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_lib.py4
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py5
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_rpcapi.py4
-rw-r--r--quantum/tests/unit/openvswitch/test_ovs_tunnel.py4
-rw-r--r--quantum/tests/unit/ryu/test_defaults.py4
-rw-r--r--quantum/tests/unit/ryu/test_ryu_agent.py5
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py4
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py3
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py6
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py4
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py4
-rw-r--r--quantum/tests/unit/services/agent_loadbalancer/test_plugin.py4
-rw-r--r--quantum/tests/unit/test_agent_config.py5
-rw-r--r--quantum/tests/unit/test_agent_linux_utils.py8
-rw-r--r--quantum/tests/unit/test_agent_netns_cleanup.py6
-rw-r--r--quantum/tests/unit/test_agent_ovs_cleanup.py4
-rw-r--r--quantum/tests/unit/test_agent_rpc.py6
-rw-r--r--quantum/tests/unit/test_api_api_common.py4
-rw-r--r--quantum/tests/unit/test_api_v2.py24
-rw-r--r--quantum/tests/unit/test_api_v2_resource.py6
-rw-r--r--quantum/tests/unit/test_attributes.py11
-rw-r--r--quantum/tests/unit/test_auth.py21
-rw-r--r--quantum/tests/unit/test_common_utils.py3
-rw-r--r--quantum/tests/unit/test_config.py4
-rw-r--r--quantum/tests/unit/test_db.py4
-rw-r--r--quantum/tests/unit/test_db_migration.py6
-rw-r--r--quantum/tests/unit/test_db_plugin.py4
-rw-r--r--quantum/tests/unit/test_db_rpc_base.py4
-rw-r--r--quantum/tests/unit/test_debug_commands.py4
-rw-r--r--quantum/tests/unit/test_dhcp_agent.py16
-rw-r--r--quantum/tests/unit/test_extension_extended_attribute.py4
-rw-r--r--quantum/tests/unit/test_extensions.py12
-rw-r--r--quantum/tests/unit/test_iptables_firewall.py4
-rw-r--r--quantum/tests/unit/test_iptables_manager.py6
-rw-r--r--quantum/tests/unit/test_l3_agent.py4
-rw-r--r--quantum/tests/unit/test_l3_plugin.py1
-rw-r--r--quantum/tests/unit/test_linux_daemon.py5
-rw-r--r--quantum/tests/unit/test_linux_dhcp.py6
-rw-r--r--quantum/tests/unit/test_linux_external_process.py4
-rw-r--r--quantum/tests/unit/test_linux_interface.py4
-rw-r--r--quantum/tests/unit/test_linux_ip_lib.py16
-rw-r--r--quantum/tests/unit/test_loadbalancer_plugin.py2
-rw-r--r--quantum/tests/unit/test_metadata_agent.py9
-rw-r--r--quantum/tests/unit/test_metadata_namespace_proxy.py7
-rw-r--r--quantum/tests/unit/test_policy.py10
-rw-r--r--quantum/tests/unit/test_quantum_context.py4
-rw-r--r--quantum/tests/unit/test_quantum_manager.py4
-rw-r--r--quantum/tests/unit/test_quota_per_tenant_ext.py1
-rw-r--r--quantum/tests/unit/test_rootwrap.py4
-rw-r--r--quantum/tests/unit/test_routerserviceinsertion.py3
-rw-r--r--quantum/tests/unit/test_security_groups_rpc.py12
-rw-r--r--quantum/tests/unit/test_servicetype.py2
-rw-r--r--quantum/tests/unit/test_wsgi.py21
-rw-r--r--quantum/tests/unit/testlib_api.py5
83 files changed, 322 insertions, 224 deletions
diff --git a/HACKING.rst b/HACKING.rst
index 4333d25685..84e81af97d 100644
--- a/HACKING.rst
+++ b/HACKING.rst
@@ -199,7 +199,10 @@ bug that had no unit test, a new passing unit test should be added. If a
submitted bug fix does have a unit test, be sure to add a new one that fails
without the patch and passes with the patch.
-All unittest classes must ultimately inherit from testtools.TestCase.
+All unittest classes must ultimately inherit from testtools.TestCase. In the
+Quantum test suite, this should be done by inheriting from
+quantum.tests.base.BaseTestCase.
+
All setUp and tearDown methods must upcall using the super() method.
tearDown methods should be avoided and addCleanup calls should be preferred.
Never manually create tempfiles. Always use the tempfile fixtures from
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):