]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Add common test base class to hold common things.
authorMonty Taylor <mordred@inaugust.com>
Sat, 23 Feb 2013 10:35:28 +0000 (10:35 +0000)
committerMonty Taylor <mordred@inaugust.com>
Tue, 5 Mar 2013 23:07:14 +0000 (18:07 -0500)
There are several common fixtures that every test case wants. Following
the pattern in Nova, add a common base test case class to hold these things.

Change-Id: I2d2cd91e5051d9cbf230e6f48985d6eddcb7b58a

83 files changed:
HACKING.rst
quantum/plugins/cisco/tests/unit/test_cisco_extension.py
quantum/plugins/cisco/tests/unit/test_database.py
quantum/tests/base.py [new file with mode: 0644]
quantum/tests/unit/__init__.py
quantum/tests/unit/_test_rootwrap_exec.py
quantum/tests/unit/brocade/test_brocade_vlan.py
quantum/tests/unit/cisco/test_nexus_plugin.py
quantum/tests/unit/hyperv/test_hyperv_quantum_agent.py
quantum/tests/unit/hyperv/test_hyperv_rpcapi.py
quantum/tests/unit/linuxbridge/test_defaults.py
quantum/tests/unit/linuxbridge/test_lb_db.py
quantum/tests/unit/linuxbridge/test_lb_quantum_agent.py
quantum/tests/unit/linuxbridge/test_rpcapi.py
quantum/tests/unit/metaplugin/test_metaplugin.py
quantum/tests/unit/midonet/test_midonet_lib.py
quantum/tests/unit/nec/test_config.py
quantum/tests/unit/nec/test_db.py
quantum/tests/unit/nec/test_ofc_manager.py
quantum/tests/unit/nec/test_pfc_driver.py
quantum/tests/unit/nec/test_trema_driver.py
quantum/tests/unit/nicira/test_defaults.py
quantum/tests/unit/nicira/test_networkgw.py
quantum/tests/unit/nicira/test_nvp_api_common.py
quantum/tests/unit/nicira/test_nvp_api_request.py
quantum/tests/unit/nicira/test_nvp_api_request_eventlet.py
quantum/tests/unit/nicira/test_nvplib.py
quantum/tests/unit/openvswitch/test_ovs_db.py
quantum/tests/unit/openvswitch/test_ovs_defaults.py
quantum/tests/unit/openvswitch/test_ovs_lib.py
quantum/tests/unit/openvswitch/test_ovs_quantum_agent.py
quantum/tests/unit/openvswitch/test_ovs_rpcapi.py
quantum/tests/unit/openvswitch/test_ovs_tunnel.py
quantum/tests/unit/ryu/test_defaults.py
quantum/tests/unit/ryu/test_ryu_agent.py
quantum/tests/unit/services/agent_loadbalancer/agent/test_api.py
quantum/tests/unit/services/agent_loadbalancer/agent/test_init.py
quantum/tests/unit/services/agent_loadbalancer/agent/test_manager.py
quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_cfg.py
quantum/tests/unit/services/agent_loadbalancer/driver/haproxy/test_namespace_driver.py
quantum/tests/unit/services/agent_loadbalancer/test_plugin.py
quantum/tests/unit/test_agent_config.py
quantum/tests/unit/test_agent_linux_utils.py
quantum/tests/unit/test_agent_netns_cleanup.py
quantum/tests/unit/test_agent_ovs_cleanup.py
quantum/tests/unit/test_agent_rpc.py
quantum/tests/unit/test_api_api_common.py
quantum/tests/unit/test_api_v2.py
quantum/tests/unit/test_api_v2_resource.py
quantum/tests/unit/test_attributes.py
quantum/tests/unit/test_auth.py
quantum/tests/unit/test_common_utils.py
quantum/tests/unit/test_config.py
quantum/tests/unit/test_db.py
quantum/tests/unit/test_db_migration.py
quantum/tests/unit/test_db_plugin.py
quantum/tests/unit/test_db_rpc_base.py
quantum/tests/unit/test_debug_commands.py
quantum/tests/unit/test_dhcp_agent.py
quantum/tests/unit/test_extension_extended_attribute.py
quantum/tests/unit/test_extensions.py
quantum/tests/unit/test_iptables_firewall.py
quantum/tests/unit/test_iptables_manager.py
quantum/tests/unit/test_l3_agent.py
quantum/tests/unit/test_l3_plugin.py
quantum/tests/unit/test_linux_daemon.py
quantum/tests/unit/test_linux_dhcp.py
quantum/tests/unit/test_linux_external_process.py
quantum/tests/unit/test_linux_interface.py
quantum/tests/unit/test_linux_ip_lib.py
quantum/tests/unit/test_loadbalancer_plugin.py
quantum/tests/unit/test_metadata_agent.py
quantum/tests/unit/test_metadata_namespace_proxy.py
quantum/tests/unit/test_policy.py
quantum/tests/unit/test_quantum_context.py
quantum/tests/unit/test_quantum_manager.py
quantum/tests/unit/test_quota_per_tenant_ext.py
quantum/tests/unit/test_rootwrap.py
quantum/tests/unit/test_routerserviceinsertion.py
quantum/tests/unit/test_security_groups_rpc.py
quantum/tests/unit/test_servicetype.py
quantum/tests/unit/test_wsgi.py
quantum/tests/unit/testlib_api.py

index 4333d256850adc55f9adf61c4a6964c25d1a9845..84e81af97d7f92481448f2e841aa560539035324 100644 (file)
@@ -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
index 87fa731facd5753ce3d0aba85c4d7e5385366520..acc022062fd7af262587d248fd6a7dd47b8594b6 100644 (file)
@@ -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):
 
index 20362369bef8d43dd2613ffaaa50ef697d2b63ff..bc183a18097670cbdf2109682331ae3f31b1c742 100644 (file)
@@ -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 (file)
index 0000000..7a582fa
--- /dev/null
@@ -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)
index de5064afe0c2b903e776e33a8022559b9eb59215..eeda0121b313b04386a682b1a9d7da445c166bb1 100644 (file)
@@ -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
index 188717cca640d261b0b1dfb8a254cd64fbfe2945..e1f54df8f9f1e825ce46ef242f495bc6c06ac8a2 100644 (file)
 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
index 454417d0206d36046a40a72a8bbbc88bd7055b99..5640ca0030a012e4895fd3d47c2b9f0b2fa3f965 100644 (file)
 """
 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):
index 91609a42311200b3baf8b53f2fbdbc0f7b3d3736..f2814a362da2862e22d907e30bffdb702ec4ca42 100644 (file)
 # 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):
         """
index 7ea8110af68cb464f58170ecf5c65f9b56237168..5b89a27d272c58dfdcd42d38c856d9644b01c610 100644 (file)
@@ -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()
index 707f4fb20734208c61d2a198ad6706154581c0ab..bf94cf31c6cd0279a7676e4316892ea4b0458a3b 100644 (file)
@@ -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):
index d67103c259b2fa4a979f7319d26542e994019e75..2f06086a1d57435f6d74130187a0252efdd66a79 100644 (file)
 # 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,
index e8007976f5c94f3b0cb7bfcd1c6e1fcdb99a76a7..ae539f05ba737a658b150ec653f4dd98293006c5 100644 (file)
@@ -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()
index da290022774a990f9fc7439a1d8523614be2acae..1ab61d6f436c54d34343c8582b1fcbc5e5f240e4 100644 (file)
@@ -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()
index bf205118f85def6d880518b1635e767e4380a72a..939a54143422cd382095e2d05ad14eb10be4d17a 100644 (file)
@@ -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')
index f9c721fbca690e49c93623c1c7c3fea0e0d93427..16926c742f5d7927b069bda3c1599d1ed6a9bbf3 100644 (file)
@@ -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):
index 6774a163650494d85d3ea3fcb670e13a64822ae0..6fdefe9e6ea1e687c948675c4f4e0a89fa8810b1 100644 (file)
 # @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()
index 60699dccb88eefe592cb2919b77b29d81d2cfb88..f0347aa905fef96d9572a581e0e65d9bd1adb7eb 100644 (file)
 #    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)
index 0975b403413496ba8e84d5cdddba8939fbc3aa1e..1d8a4390816dec4e8cc256f5e26b29d2f5642945 100644 (file)
 # @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):
index b42e1b6b76cd66585235a5e949696dfab02cef16..899be61cee700f3a850aa7a443afae56f7158688 100644 (file)
 #    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):
index 91b5d35775a31328c3e63306ada74b52d825cdb0..c78f89d7d3e15545274855810474e04fe886d2b4 100644 (file)
@@ -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):
index a785234963813c9a2216881f95439cab3048f5ec..dd369196be44f9349e2fadbb8416a15ffef669f6 100644 (file)
@@ -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()
index fffb796305932e7a98e4a4232021b29253590de5..3e5580e1b73324ec04c934f9b80297c726a26f08 100644 (file)
 #    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)
index 0ba10bc305b8d8820f0464d480ee35cd3b1f35fe..7f7c8f78747c39489b94a09549277110a5e3c853 100644 (file)
@@ -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()
index c9b774d4a721f414a01c4b48f8f1cb1426a0441c..7ec1bd4380a2fe81990da51d721c03ad406466ca 100644 (file)
@@ -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)
index 005449a2ca4f9e9152ade6e40a2dd4d0fd2688ab..2343e2297d51f5c095af8f4ceebed362a9989f33 100644 (file)
@@ -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
index 4a475c7dd6f0612bfebedebec6c484943478b7a9..06ca84aee926464a6bc19ba0950c6f8da354c1b7 100644 (file)
@@ -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):
 
index 0648c975c0d71d70363f8d046b984122a225e82b..3e41456a1245ceb847c8101cc880b38f2e2b998e 100644 (file)
 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
index 452e1c5abfecfb85d55b0b2fd015d65a88576936..85768c106ca3e95ff89a5dfa76354a846c847ec8 100644 (file)
@@ -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()
index 898a035faafc06695de8e892364f29507a55fa86..4eabe0fea1dd30fbdccced0ed59ffa5ec968c1dc 100644 (file)
 # 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)
index e3fb81a6493e413f9272dd749d6ecfd192009b0e..790c756cf18615f4e523d293f14c696d95a09f44 100644 (file)
 # @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
index 0744f9c5b51c8c6b0dcfaf0f3975b53b676d0ab5..41e9bc4a6a38140e6bd00744513d8d92d55cd646 100644 (file)
@@ -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()
index 32224335b9e3a713e64b315eb8479fdfd6b1e74b..93207ca41b8b0ed08047ceb2366ac4304a9f6118 100644 (file)
@@ -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')
index 79460590cbf83e3d114ca08d9b7dbf70c0e0e141..aaf918f05543fc6d3f75b233cdb160928a6341c4 100644 (file)
@@ -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()
index 40fc8d679b2d3faea85f3cee208a009ba521bf39..91442650c364b5f7d42c2fe7e5e5ce565e4166af 100644 (file)
 #    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)
index 0ebd6aeacd467659b2cc4902a246c300236017ad..223c4afe946b582961405647687fb2f74293f992 100644 (file)
@@ -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'
 
index 2d5a2ee11f4fc56c0763b5f9c6fd3a451d14b0bb..9b36cd4f75811c58885a637eef6118d04d66adc1 100644 (file)
 # @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)
index a33a36519eb4f7e3c9b955c6512104e84d67c7f4..52342604c31c247f5b3fefa98b4a49ab47636294 100644 (file)
@@ -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)
index b025809c05c3b07c054e2c8da169083264b6ac1b..e284a3126dd6cfbd9362bcdd7d2ef87d62096eaf 100644 (file)
 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)
index 4b95a23106c402be23f8b4e08087e0b054290d17..f07d383cde8d947e2550a4f12d35bc7222914720 100644 (file)
 
 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.'
index ccb4c91d24f09eeb4b0f0963de90eba4f55ff241..b7cb98042ced108b3c0f2790f927fbfb8fd3deeb 100644 (file)
 
 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()
 
index a4289ef0cfa851fd30794c3d96c135dc5fef56fa..f2b0f229ba7a951438e1ce52516f088b7ff27997 100644 (file)
 # @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)
index 5a01c43e1512091755cbbf4e89ef8e7e436d2ea4..4cb3c48bff4a494a59aa63c9364ef3270de6ba95 100644 (file)
@@ -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()
index bd94dd6a9dcceac27f7e05d94d94132cbaab51ac..80ada7de3f7116a768ab145a1d2e22b89d9c2ccc 100644 (file)
 
 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:
index 45f284837c237f494a6f25458d97b6f883d17d50..243b93775af137dd644dab30cca2a8ef9ced185b 100644 (file)
 
 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)
index 6ab4b0fdde248d3ec7a53499e2a7d7fda8b388fb..8983a35a2602e9873a03999d9dda9f931eebd579 100644 (file)
@@ -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)
index b99a202c6ff567a984fb5b2535a3ec3681e728c4..55a9155042ef49605fd8c083fefaeebb91fe0049 100644 (file)
 
 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 = [
index a3863bc5cc4111854daf9b13f24c3f3a01f281de..a936361a705ecdb9abb9089199778fcf32b89040 100644 (file)
 # @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)
index 2ed703bd126477a665829673dcafdf705f6df278..c66495218d766fb69420b994e741f7c5110a98f8 100644 (file)
@@ -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)
index e89b577eeffa4aa38dbdebeade9873f8e06920bf..7328c1c6d092e26bae93b3388f581d21ea3ea19e 100644 (file)
 #
 
 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()
index 9863cbbe5cb0548200f1cce2f348cdfb9c63c973..d91720ef32ce7d89df723a301e7fa039347068e7 100644 (file)
@@ -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, [], (), {}):
index 1f0a69108df5db8d80f4da1c045862e60ef144aa..14e6200775c2acf46f0af8da6905b81db528c136 100644 (file)
@@ -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()
 
index 64ab401c548f77603dc504b920ceb2349f00c316..d3cfd397f54fb252379f5aed6cc8f566447430c7 100644 (file)
 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)
 
index 5ae77bdec6b17dc4b4cbe2c07b86ecc32250a2f3..64f2e7c7572cf1aa8997c364887414ffc8a131b5 100644 (file)
 # 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)
index 0f7d9b2692ed912d7014e4d943cf85030892aca0..9a9e6456ee907e56806597126a5f7fdcbee28a68 100644 (file)
 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')
index c9573e064420f81b71a94dc597dc1ddab4f9a9fd..114f3aae6d2306f226a3d6dcd0cd6d4d644afc74 100644 (file)
 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')
index 3707d5077741e88000595b2f220bbf7051deead3..b8b61d5907f5dbcb47d0606295fe7a22aa5dec52 100644 (file)
@@ -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 """
index 136973e37c55ddd52788f97334409f800bf76e51..7039aa33901cd9ee501929a9876dcc1ef86039ce 100644 (file)
 # 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()
index fb76e76fffe67ddf1062406b8cd25410851c4622..4ece229777c7fbe3ec0c65a5f6641caf862c1f68 100644 (file)
@@ -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)
index da7262a6eae3efcd0d8fc469d7045f6bfe593a59..fdfde732757fbf7fc5e34585ff917d115ffb6568 100644 (file)
@@ -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)
 
index d738326e40575a0deff58e55a2d4a28f5e367ec7..831a9331239391454f3d1e35ed56e8b983aaffc4 100644 (file)
@@ -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 = (
index 9861da3e94739defb0f38a2410eb20a4d994fa31..80dc099f15adbde06b84c6237be972c2c7954497 100644 (file)
@@ -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"])
index 73ad85e3d4d6c064ca9635758bd1b6ff0af0e49c..cbf61c5433b3f877f69b70a8b3ee401fafdf0acb 100644 (file)
 
 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(
index e8efa920f7917f84b1e72ed8afb8c901bb8a4722..1ce5af0fd828422a93dab6cfe3223eeed837f87b 100644 (file)
@@ -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()
index 576b10f61d2f1aa058f8c393470bb1d68fcb96ab..80db7f4fe5674920d3d8da94b6f87028fff1be74 100644 (file)
@@ -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()
index 509ba8fc58efd442c015d397bf219a1daf1da6de..64463141be4f8e17e1d81059b7794f4ca464c8ca 100644 (file)
@@ -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
index 46afea1f7de1067e5f31a722316dcacc69f2ffb8..57aeaac6c5a0f46118781cdba742cfb8077aad0c 100644 (file)
@@ -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')
index ee9557cff0680a2fecaaa907b478ed4e809913a0..a3ab7fbce7293c4d33b80bf2918454ae27a205e8 100644 (file)
@@ -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__))
index 03dab45d27f8e671f1aa5d9dc531300e10376f8f..3a96f414d70e878488a87f0e0c14c6d3ad527ba3 100644 (file)
 # @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')
index 9e3ed5262bfc2a97278e2476f8fd7c3a06589e23..90d104f4e5f546419eadfc2452a8dabd021c8349 100644 (file)
@@ -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 = [
index cc54ff23cdc24c178ec29ee49b060eac281c4764..0e8832c69912fc666ee66b0e3d84230121bea2a3 100644 (file)
 #    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]
index 15418d7c0ca457b0841a58ba75a7f152a4d52571..109043d741d7802112a5ebbe1a3e64aab2f5a5d7 100644 (file)
@@ -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
index e41cd3d0222c7f96a94a0efb0091c95c467484ef..ce42edd7a4dc9dd5718258078dd50a5a296d5cc3 100644 (file)
@@ -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')
index e30dd306bbb0201c37633c17b516e603441b4909..6de98fe92fe05867ab96dd7e3a6697cd6076911f 100644 (file)
@@ -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')
index 2539d84d43180044d187b45b2b69b60033843b21..62421312fc65a4720d1cb319a13f0160ad6b2085 100644 (file)
@@ -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()
index 169ca3633dcfe0d85aca82ccd461c83601324fcb..c2bc58564e1f445fcb2bd71474da1148fad356dd 100644 (file)
 #    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()
index 0e987f3fdbbebab1bd42a9c1638cefbc9a9e4ac2..f7f60bcda4ea0152233fd99b1b9eeda41b0a4739 100644 (file)
@@ -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()
index 838a1fd930c56b0967718c353f778e4795470726..5b1285d6685909054047d9b39605929c40a51852 100644 (file)
@@ -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
index ec667bfb148c2fbb853088c4db91fd35a1dace3e..47de4f25f780bc50ed3b02c2f367f8f8897d5bd4 100644 (file)
 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()
index 21f016db48945a247e96e1ec877265d43a55fcca..d9993019508ca453bfeeb5669440dff102f506d7 100644 (file)
@@ -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 = (
index 1cb0b22abc1bcf7590575c40e06bcb16f9c6d7a2..f51003143cff42bcfed2fa0a3a9679d41ba95c68 100644 (file)
@@ -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'
index bded462954fb3438bc0cbc69fc23884c517bf095..c9f3aeeb98363f168b02eeff23bba5c8f812eb29 100644 (file)
@@ -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
index 0c09c1cd4df2b9c791de7a0e0b289c0d78dfaffd..3b1999e39bb7c2fa625ac6f64d3dbdd71b825502 100644 (file)
 #    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',
index 67e428c432613729ff97356b1cab70023d613c65..3e8f35361f21305ee06122c225c0dd93f12893e6 100644 (file)
@@ -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):