Exemplo n.º 1
0
    def setUp(self):
        super(ProvidernetExtensionTestCase, self).setUp()

        plugin = 'quantum.quantum_plugin_base_v2.QuantumPluginBaseV2'
        # Ensure 'stale' patched copies of the plugin are never returned
        QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Save the global RESOURCE_ATTRIBUTE_MAP
        self.saved_attr_map = {}
        for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
            self.saved_attr_map[resource] = attrs.copy()

        # Update the plugin and extensions path
        cfg.CONF.set_override('core_plugin', plugin)
        cfg.CONF.set_override('allow_pagination', True)
        cfg.CONF.set_override('allow_sorting', True)
        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()
        # Ensure Quota checks never fail because of mock
        instance = self.plugin.return_value
        instance.get_networks_count.return_value = 1
        # Instantiate mock plugin and enable the 'provider' extension
        QuantumManager.get_plugin().supported_extension_aliases = ([
            "provider"
        ])
        ext_mgr = ProviderExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.addCleanup(self._plugin_patcher.stop)
        self.addCleanup(cfg.CONF.reset)
        self.addCleanup(self._restore_attribute_map)
        self.api = webtest.TestApp(router.APIRouter())
Exemplo n.º 2
0
    def setUp(self):
        super(NetworkGatewayExtensionTestCase, self).setUp()
        plugin = '%s.%s' % (networkgw.__name__,
                            networkgw.NetworkGatewayPluginBase.__name__)
        self._resource = networkgw.RESOURCE_NAME.replace('-', '_')
        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args=args)

        # Update the plugin and extensions path
        cfg.CONF.set_override('core_plugin', plugin)
        self.addCleanup(cfg.CONF.reset)

        _plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = _plugin_patcher.start()
        self.addCleanup(_plugin_patcher.stop)

        # Instantiate mock plugin and enable extensions
        manager.QuantumManager.get_plugin().supported_extension_aliases = (
            [networkgw.EXT_ALIAS])
        ext_mgr = TestExtensionManager()
        PluginAwareExtensionManager._instance = ext_mgr
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
Exemplo n.º 3
0
 def setUp(self, plugin=None):
     ext_path = os.path.join(os.path.dirname(os.path.dirname(__file__)),
                             NICIRA_EXT_PATH)
     cfg.CONF.set_override('api_extensions_path', ext_path)
     super(TestNiciraQoSQueue, self).setUp()
     ext_mgr = NvpQoSTestExtensionManager()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
Exemplo n.º 4
0
    def setUp(self):

        plugin = 'quantum.extensions.l3.RouterPluginBase'

        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Save the global RESOURCE_ATTRIBUTE_MAP
        self.saved_attr_map = {}
        for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
            self.saved_attr_map[resource] = attrs.copy()

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args=args)

        # Update the plugin and extensions path
        cfg.CONF.set_override('core_plugin', plugin)

        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()

        # Instantiate mock plugin and enable the 'router' extension
        manager.QuantumManager.get_plugin().supported_extension_aliases = (
            ["router"])

        ext_mgr = L3TestExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
    def setUp(self):
        super(LoadBalancerExtensionTestCase, self).setUp()
        plugin = 'quantum.extensions.loadbalancer.LoadBalancerPluginBase'
        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args)

        #just stubbing core plugin with LoadBalancer plugin
        cfg.CONF.set_override('core_plugin', plugin)
        cfg.CONF.set_override('service_plugins', [plugin])

        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()
        instance = self.plugin.return_value
        instance.get_plugin_type.return_value = constants.LOADBALANCER

        ext_mgr = LoadBalancerTestExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
        super(LoadBalancerExtensionTestCase, self).setUp()
Exemplo n.º 6
0
    def setUp(self):

        plugin = 'quantum.extensions.l3.RouterPluginBase'

        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Save the global RESOURCE_ATTRIBUTE_MAP
        self.saved_attr_map = {}
        for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
            self.saved_attr_map[resource] = attrs.copy()

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args=args)

        # Update the plugin and extensions path
        cfg.CONF.set_override('core_plugin', plugin)

        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()

        # Instantiate mock plugin and enable the 'router' extension
        manager.QuantumManager.get_plugin().supported_extension_aliases = ([
            "router"
        ])

        ext_mgr = L3TestExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
Exemplo n.º 7
0
    def setUp(self):
        super(LoadBalancerExtensionTestCase, self).setUp()
        plugin = 'quantum.extensions.loadbalancer.LoadBalancerPluginBase'
        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args)

        #just stubbing core plugin with LoadBalancer plugin
        cfg.CONF.set_override('core_plugin', plugin)
        cfg.CONF.set_override('service_plugins', [plugin])

        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()
        instance = self.plugin.return_value
        instance.get_plugin_type.return_value = constants.LOADBALANCER

        ext_mgr = LoadBalancerTestExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
        super(LoadBalancerExtensionTestCase, self).setUp()
Exemplo n.º 8
0
    def setUp(self):
        super(NetworkGatewayExtensionTestCase, self).setUp()
        plugin = '%s.%s' % (networkgw.__name__,
                            networkgw.NetworkGatewayPluginBase.__name__)
        self._resource = networkgw.RESOURCE_NAME.replace('-', '_')
        # Ensure 'stale' patched copies of the plugin are never returned
        manager.QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Create the default configurations
        args = ['--config-file', test_api_v2.etcdir('quantum.conf.test')]
        config.parse(args=args)

        # Update the plugin and extensions path
        cfg.CONF.set_override('core_plugin', plugin)
        self.addCleanup(cfg.CONF.reset)

        _plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = _plugin_patcher.start()
        self.addCleanup(_plugin_patcher.stop)

        # Instantiate mock plugin and enable extensions
        manager.QuantumManager.get_plugin().supported_extension_aliases = (
            [networkgw.EXT_ALIAS])
        ext_mgr = TestExtensionManager()
        PluginAwareExtensionManager._instance = ext_mgr
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.api = webtest.TestApp(self.ext_mdw)
Exemplo n.º 9
0
    def setUp(self):
        super(ProvidernetExtensionTestCase, self).setUp()

        plugin = "quantum.quantum_plugin_base_v2.QuantumPluginBaseV2"
        # Ensure 'stale' patched copies of the plugin are never returned
        QuantumManager._instance = None

        # Ensure existing ExtensionManager is not used
        extensions.PluginAwareExtensionManager._instance = None

        # Save the global RESOURCE_ATTRIBUTE_MAP
        self.saved_attr_map = {}
        for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
            self.saved_attr_map[resource] = attrs.copy()

        # Update the plugin and extensions path
        cfg.CONF.set_override("core_plugin", plugin)
        cfg.CONF.set_override("allow_pagination", True)
        cfg.CONF.set_override("allow_sorting", True)
        self._plugin_patcher = mock.patch(plugin, autospec=True)
        self.plugin = self._plugin_patcher.start()
        # Ensure Quota checks never fail because of mock
        instance = self.plugin.return_value
        instance.get_networks_count.return_value = 1
        # Instantiate mock plugin and enable the 'provider' extension
        QuantumManager.get_plugin().supported_extension_aliases = ["provider"]
        ext_mgr = ProviderExtensionManager()
        self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
        self.addCleanup(self._plugin_patcher.stop)
        self.addCleanup(cfg.CONF.reset)
        self.addCleanup(self._restore_attribute_map)
        self.api = webtest.TestApp(router.APIRouter())
Exemplo n.º 10
0
 def setUp(self, plugin=None):
     ext_path = os.path.join(os.path.dirname(os.path.dirname(__file__)),
                             NICIRA_EXT_PATH)
     cfg.CONF.set_override('api_extensions_path', ext_path)
     super(TestNiciraQoSQueue, self).setUp()
     ext_mgr = NvpQoSTestExtensionManager()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
Exemplo n.º 11
0
 def setUp(self):
     self.dhcp_notifier_cls_p = mock.patch(
         'quantum.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
         'DhcpAgentNotifyAPI')
     self.dhcp_notifier = mock.Mock(name='dhcp_notifier')
     self.dhcp_notifier_cls = self.dhcp_notifier_cls_p.start()
     self.dhcp_notifier_cls.return_value = self.dhcp_notifier
     super(OvsL3AgentNotifierTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     self.addCleanup(self.dhcp_notifier_cls_p.stop)
Exemplo n.º 12
0
 def setUp(self):
     self.dhcp_notifier_cls_p = mock.patch(
         'quantum.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
         'DhcpAgentNotifyAPI')
     self.dhcp_notifier = mock.Mock(name='dhcp_notifier')
     self.dhcp_notifier_cls = self.dhcp_notifier_cls_p.start()
     self.dhcp_notifier_cls.return_value = self.dhcp_notifier
     super(OvsL3AgentNotifierTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     self.addCleanup(self.dhcp_notifier_cls_p.stop)
Exemplo n.º 13
0
    def setUp(self, plugin=None):
        super(SecurityGroupsTestCase, self).setUp()
        db._ENGINE = None
        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
        # this case, but copy.deepcopy does not seem to work, since it
        # causes test failures
        self._attribute_map_bk = {}
        for item in attributes.RESOURCE_ATTRIBUTE_MAP:
            self._attribute_map_bk[item] = (attributes.
                                            RESOURCE_ATTRIBUTE_MAP[item].
                                            copy())
        json_deserializer = JSONDeserializer()
        self._deserializers = {
            'application/json': json_deserializer,
        }

        if not plugin:
            plugin = test_config.get('plugin_name_v2', DB_PLUGIN_KLASS)

        # Create the default configurations
        args = ['--config-file', etcdir('quantum.conf.test')]
        # If test_config specifies some config-file, use it, as well
        for config_file in test_config.get('config_files', []):
            args.extend(['--config-file', config_file])
        config.parse(args=args)
        # Update the plugin
        cfg.CONF.set_override('core_plugin', plugin)
        self.api = APIRouter()

        def _is_native_bulk_supported():
            plugin_obj = QuantumManager.get_plugin()
            native_bulk_attr_name = ("_%s__native_bulk_support"
                                     % plugin_obj.__class__.__name__)
            return getattr(plugin_obj, native_bulk_attr_name, False)

        self._skip_native_bulk = not _is_native_bulk_supported()

        QuantumManager.get_plugin().supported_extension_aliases = (
            ["security-groups"])
        ext_mgr = SecurityGroupTestExtensionManager()
        if ext_mgr:
            self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
    def setUp(self, plugin=None):
        super(SecurityGroupsTestCase, self).setUp()
        db._ENGINE = None
        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
        # this case, but copy.deepcopy does not seem to work, since it
        # causes test failures
        self._attribute_map_bk = {}
        for item in attributes.RESOURCE_ATTRIBUTE_MAP:
            self._attribute_map_bk[item] = (
                attributes.RESOURCE_ATTRIBUTE_MAP[item].copy())
        json_deserializer = JSONDeserializer()
        self._deserializers = {
            'application/json': json_deserializer,
        }

        if not plugin:
            plugin = test_config.get('plugin_name_v2', DB_PLUGIN_KLASS)

        # Create the default configurations
        args = ['--config-file', etcdir('quantum.conf.test')]
        # If test_config specifies some config-file, use it, as well
        for config_file in test_config.get('config_files', []):
            args.extend(['--config-file', config_file])
        config.parse(args=args)
        # Update the plugin
        cfg.CONF.set_override('core_plugin', plugin)
        self.api = APIRouter()

        def _is_native_bulk_supported():
            plugin_obj = QuantumManager.get_plugin()
            native_bulk_attr_name = ("_%s__native_bulk_support" %
                                     plugin_obj.__class__.__name__)
            return getattr(plugin_obj, native_bulk_attr_name, False)

        self._skip_native_bulk = not _is_native_bulk_supported()

        QuantumManager.get_plugin().supported_extension_aliases = ([
            "security-groups"
        ])
        ext_mgr = SecurityGroupTestExtensionManager()
        if ext_mgr:
            self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
Exemplo n.º 15
0
 def setUp(self):
     plugin = ('quantum.plugins.openvswitch.'
               'ovs_quantum_plugin.OVSQuantumPluginV2')
     self.dhcp_notifier_cls_p = mock.patch(
         'quantum.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
         'DhcpAgentNotifyAPI')
     self.dhcp_notifier = mock.Mock(name='dhcp_notifier')
     self.dhcp_notifier_cls = self.dhcp_notifier_cls_p.start()
     self.dhcp_notifier_cls.return_value = self.dhcp_notifier
     super(AgentSchedulerTestCase, self).setUp(plugin)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     self.agentscheduler_dbMinxin = manager.QuantumManager.get_plugin()
     self.addCleanup(self.dhcp_notifier_cls_p.stop)
Exemplo n.º 16
0
 def setUp(self):
     # This is needed because otherwise a failure will occur due to
     # nonexisting core_plugin
     cfg.CONF.set_override('core_plugin', test_db_plugin.DB_PLUGIN_KLASS)
     cfg.CONF.set_override('service_plugins',
                           ["%s.%s" % (dp.__name__,
                                       dp.DummyServicePlugin.__name__)])
     # Make sure at each test a new instance of the plugin is returned
     manager.QuantumManager._instance = None
     # Ensure existing ExtensionManager is not used
     extensions.PluginAwareExtensionManager._instance = None
     ext_mgr = TestServiceTypeExtensionManager()
     self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
     self.api = webtest.TestApp(self.ext_mdw)
     self.resource_name = servicetype.RESOURCE_NAME.replace('-', '_')
Exemplo n.º 17
0
 def setUp(self):
     # Save the global RESOURCE_ATTRIBUTE_MAP
     self.saved_attr_map = {}
     for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
         self.saved_attr_map[resource] = attrs.copy()
     super(OvsAgentSchedulerTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     # Add the resources to the global attribute map
     # This is done here as the setup process won't
     # initialize the main API router which extends
     # the global attribute map
     attributes.RESOURCE_ATTRIBUTE_MAP.update(
         agent.RESOURCE_ATTRIBUTE_MAP)
     self.addCleanup(self.restore_attribute_map)
     self.agentscheduler_dbMinxin = manager.QuantumManager.get_plugin()
Exemplo n.º 18
0
 def setUp(self):
     # This is needed because otherwise a failure will occur due to
     # nonexisting core_plugin
     cfg.CONF.set_override('core_plugin', test_db_plugin.DB_PLUGIN_KLASS)
     cfg.CONF.set_override(
         'service_plugins',
         ["%s.%s" % (dp.__name__, dp.DummyServicePlugin.__name__)])
     self.addCleanup(cfg.CONF.reset)
     # Make sure at each test a new instance of the plugin is returned
     manager.QuantumManager._instance = None
     # Ensure existing ExtensionManager is not used
     extensions.PluginAwareExtensionManager._instance = None
     ext_mgr = TestServiceTypeExtensionManager()
     self.ext_mdw = test_extensions.setup_extensions_middleware(ext_mgr)
     self.api = webtest.TestApp(self.ext_mdw)
     self.resource_name = servicetype.RESOURCE_NAME.replace('-', '_')
     super(ServiceTypeTestCaseBase, self).setUp()
Exemplo n.º 19
0
 def setUp(self):
     self.dhcp_notifier_cls_p = mock.patch(
         'quantum.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
         'DhcpAgentNotifyAPI')
     self.dhcp_notifier = mock.Mock(name='dhcp_notifier')
     self.dhcp_notifier_cls = self.dhcp_notifier_cls_p.start()
     self.dhcp_notifier_cls.return_value = self.dhcp_notifier
     # Save the global RESOURCE_ATTRIBUTE_MAP
     self.saved_attr_map = {}
     for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
         self.saved_attr_map[resource] = attrs.copy()
     super(OvsL3AgentNotifierTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     # Add the resources to the global attribute map
     # This is done here as the setup process won't
     # initialize the main API router which extends
     # the global attribute map
     attributes.RESOURCE_ATTRIBUTE_MAP.update(
         agent.RESOURCE_ATTRIBUTE_MAP)
     self.agentscheduler_dbMinxin = manager.QuantumManager.get_plugin()
     self.addCleanup(self.dhcp_notifier_cls_p.stop)
     self.addCleanup(self.restore_attribute_map)
Exemplo n.º 20
0
 def setUp(self):
     super(OvsAgentSchedulerTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     self.agentscheduler_dbMinxin = manager.QuantumManager.get_plugin()
Exemplo n.º 21
0
 def setUp(self):
     super(OvsAgentSchedulerTestCase, self).setUp(self.plugin_str)
     ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
     self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
     self.adminContext = context.get_admin_context()
     self.agentscheduler_dbMinxin = manager.QuantumManager.get_plugin()