diff options
Diffstat (limited to 'tests/unit/test_extensions.py')
-rw-r--r-- | tests/unit/test_extensions.py | 42 |
1 files changed, 27 insertions, 15 deletions
diff --git a/tests/unit/test_extensions.py b/tests/unit/test_extensions.py index 841bf4d..fb5fdb1 100644 --- a/tests/unit/test_extensions.py +++ b/tests/unit/test_extensions.py @@ -19,22 +19,15 @@ from lxml import etree import os.path import routes import unittest - from webtest import TestApp - -from openstack.common import wsgi from openstack.common import config from openstack.common import extensions -from tests.unit.extension_stubs import (StubExtension, - StubBaseAppController) -from openstack.common.extensions import (ExtensionManager, - ExtensionMiddleware) - +from openstack.common import wsgi +from tests.unit import extension_stubs test_conf_file = os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, 'etc', 'openstack-common.conf.test') -extensions_path = os.path.join(os.path.dirname(__file__), "extensions") NS = "{http://docs.openstack.org/}" ATOMNS = "{http://www.w3.org/2005/Atom}" @@ -44,7 +37,7 @@ class ExtensionsTestApp(wsgi.Router): def __init__(self, options={}): mapper = routes.Mapper() - controller = StubBaseAppController() + controller = extension_stubs.StubBaseAppController() mapper.resource("dummy_resource", "/dummy_resources", controller=controller.create_resource()) super(ExtensionsTestApp, self).__init__(mapper) @@ -296,9 +289,9 @@ class ExtensionManagerTest(unittest.TestCase): def get_alias(self): return "invalid_extension" - ext_mgr = ExtensionManager('') + ext_mgr = extensions.ExtensionManager('') ext_mgr.add_extension(InvalidExtension()) - ext_mgr.add_extension(StubExtension("valid_extension")) + ext_mgr.add_extension(extension_stubs.StubExtension("valid_extension")) self.assertTrue('valid_extension' in ext_mgr.extensions) self.assertFalse('invalid_extension' in ext_mgr.extensions) @@ -376,6 +369,27 @@ class ExtensionControllerTest(unittest.TestCase): 'The Fox In Socks Extension') +class DefaultXmlnsTest(unittest.TestCase): + + def setUp(self): + super(DefaultXmlnsTest, self).setUp() + self.original_default_xmlns = extensions.DEFAULT_XMLNS + extensions.DEFAULT_XMLNS = "http://blah" + self.test_app = setup_extensions_test_app() + + def test_default_xmlns_can_be_changed(self): + response = self.test_app.get("/extensions/FOXNSOX.xml") + self.assertEqual(200, response.status_int) + xml = response.body + + root = etree.XML(xml) + self.assertEqual(root.tag.split('extension')[0], "{http://blah}") + + def tearDown(self): + super(DefaultXmlnsTest, self).tearDown() + extensions.DEFAULT_XMLNS = self.original_default_xmlns + + class ExtensionsXMLSerializerTest(unittest.TestCase): def test_serialize_extenstion(self): @@ -467,11 +481,9 @@ def setup_base_app(): def setup_extensions_middleware(extension_manager=None): - extension_manager = (extension_manager or - ExtensionManager(extensions_path)) options = {'config_file': test_conf_file} conf, app = config.load_paste_app('extensions_test_app', options, None) - return ExtensionMiddleware(app, extension_manager) + return extensions.ExtensionMiddleware(app, conf, extension_manager) def setup_extensions_test_app(extension_manager=None): |