]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Plugin aware extensions should also be reset at each test setup
authorYusuke Muraoka <yusuke@nttmcl.com>
Tue, 28 Aug 2012 09:59:42 +0000 (09:59 +0000)
committerYusuke Muraoka <yusuke@nttmcl.com>
Tue, 28 Aug 2012 12:44:50 +0000 (12:44 +0000)
PluginAwareExtensionManager caches extension according plugin.
At each db plugin test setup, testing plugin and router are newly
created.
However, the extension manager held the extensions for first time
loaded plugin. Because of their cache.

So if a plugin conditional extension exists, it could not be loaded by
testing order.

Fixes bug 1043381.

Change-Id: Ic994aab61c3d67aa9d422594484049f41ff8b321

quantum/tests/unit/test_db_plugin.py

index 73184f23635da78b64707b32ed624fbc70ea41dc..f39ca762c10152d2f548d30c5abd8924de687cce 100644 (file)
@@ -34,6 +34,7 @@ from quantum import context
 from quantum.db import api as db
 from quantum.db import db_base_plugin_v2
 from quantum.db import models_v2
+from quantum.extensions.extensions import PluginAwareExtensionManager
 from quantum.manager import QuantumManager
 from quantum.openstack.common import cfg
 from quantum.openstack.common import timeutils
@@ -63,6 +64,8 @@ class QuantumDbPluginV2TestCase(unittest2.TestCase):
         db._MAKER = None
         # Make sure at each test a new instance of the plugin is returned
         QuantumManager._instance = None
+        # Make sure at each test according extensions for the plugin is loaded
+        PluginAwareExtensionManager._instance = None
         # Save the attributes map in case the plugin will alter it
         # loading extensions
         # Note(salvatore-orlando): shallow copy is not good enough in