From: Eugene Nikanorov Date: Wed, 13 Nov 2013 10:54:56 +0000 (+0400) Subject: Move Loadbalancer Noop driver to the unit tests X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=daecbdfdebaf89163f6eaf6b72a4cde2322f1b08;p=openstack-build%2Fneutron-build.git Move Loadbalancer Noop driver to the unit tests Move Loadbalancer Noop driver to the corresponding folder in unit tests to clearly indicate that it is an utility driver that only suitable for unit testing. Closes-Bug: #1250767 Change-Id: Ide2ebf212193f2cf5da9cf7a7f068fd918a55ada --- diff --git a/neutron/services/loadbalancer/drivers/noop/__init__.py b/neutron/services/loadbalancer/drivers/noop/__init__.py deleted file mode 100644 index 5e8da711f..000000000 --- a/neutron/services/loadbalancer/drivers/noop/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2013 OpenStack Foundation. -# 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. diff --git a/neutron/services/loadbalancer/drivers/noop/noop_driver.py b/neutron/services/loadbalancer/drivers/noop/noop_driver.py deleted file mode 100644 index 4060dca50..000000000 --- a/neutron/services/loadbalancer/drivers/noop/noop_driver.py +++ /dev/null @@ -1,98 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 -# -# Copyright 2013 Radware LTD. -# -# 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. -# -# @author: Avishay Balderman, Radware - -from neutron.common import log -from neutron.openstack.common import log as logging -from neutron.services.loadbalancer.drivers import ( - abstract_driver -) - -LOG = logging.getLogger(__name__) - - -class NoopLbaaSDriver(abstract_driver.LoadBalancerAbstractDriver): - - """A dummy lbass driver that: - 1) Logs methods input - 2) Uses the plugin API in order to update - the config elements status in DB - """ - - def __init__(self, plugin): - self.plugin = plugin - - @log.log - def create_vip(self, context, vip): - pass - - @log.log - def update_vip(self, context, old_vip, vip): - pass - - @log.log - def delete_vip(self, context, vip): - self.plugin._delete_db_vip(context, vip["id"]) - - @log.log - def create_pool(self, context, pool): - pass - - @log.log - def update_pool(self, context, old_pool, pool): - pass - - @log.log - def delete_pool(self, context, pool): - self.plugin._delete_db_pool(context, pool["id"]) - - @log.log - def stats(self, context, pool_id): - return {"bytes_in": 0, - "bytes_out": 0, - "active_connections": 0, - "total_connections": 0} - - @log.log - def create_member(self, context, member): - pass - - @log.log - def update_member(self, context, old_member, member): - pass - - @log.log - def delete_member(self, context, member): - self.plugin._delete_db_member(context, member["id"]) - - @log.log - def update_health_monitor(self, context, old_health_monitor, - health_monitor, - pool_association): - pass - - @log.log - def create_pool_health_monitor(self, context, - health_monitor, pool_id): - pass - - @log.log - def delete_pool_health_monitor(self, context, health_monitor, pool_id): - self.plugin._delete_db_pool_health_monitor( - context, health_monitor["id"], - pool_id - ) diff --git a/neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py b/neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py index 6ba2b3ff5..f757f2763 100644 --- a/neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py +++ b/neutron/tests/unit/db/loadbalancer/test_db_loadbalancer.py @@ -35,6 +35,9 @@ from neutron.plugins.common import constants from neutron.services.loadbalancer import ( plugin as loadbalancer_plugin ) +from neutron.services.loadbalancer.drivers import ( + abstract_driver +) from neutron.services import provider_configuration as pconf from neutron.tests.unit import test_db_plugin @@ -46,6 +49,8 @@ DB_LB_PLUGIN_KLASS = ( "neutron.services.loadbalancer." "plugin.LoadBalancerPlugin" ) +NOOP_DRIVER_KLASS = ('neutron.tests.unit.db.loadbalancer.test_db_loadbalancer.' + 'NoopLbaaSDriver') ROOTDIR = os.path.dirname(__file__) + '../../../..' ETCDIR = os.path.join(ROOTDIR, 'etc') @@ -58,6 +63,61 @@ def etcdir(*p): return os.path.join(ETCDIR, *p) +class NoopLbaaSDriver(abstract_driver.LoadBalancerAbstractDriver): + """A dummy lbass driver that that only performs object deletion.""" + + def __init__(self, plugin): + self.plugin = plugin + + def create_vip(self, context, vip): + pass + + def update_vip(self, context, old_vip, vip): + pass + + def delete_vip(self, context, vip): + self.plugin._delete_db_vip(context, vip["id"]) + + def create_pool(self, context, pool): + pass + + def update_pool(self, context, old_pool, pool): + pass + + def delete_pool(self, context, pool): + self.plugin._delete_db_pool(context, pool["id"]) + + def stats(self, context, pool_id): + return {"bytes_in": 0, + "bytes_out": 0, + "active_connections": 0, + "total_connections": 0} + + def create_member(self, context, member): + pass + + def update_member(self, context, old_member, member): + pass + + def delete_member(self, context, member): + self.plugin._delete_db_member(context, member["id"]) + + def update_health_monitor(self, context, old_health_monitor, + health_monitor, + pool_association): + pass + + def create_pool_health_monitor(self, context, + health_monitor, pool_id): + pass + + def delete_pool_health_monitor(self, context, health_monitor, pool_id): + self.plugin._delete_db_pool_health_monitor( + context, health_monitor["id"], + pool_id + ) + + class LoadBalancerTestMixin(object): resource_prefix_map = dict( (k, constants.COMMON_PREFIXES[constants.LOADBALANCER]) @@ -265,8 +325,7 @@ class LoadBalancerPluginDbTestCase(LoadBalancerTestMixin, if not lbaas_provider: lbaas_provider = ( constants.LOADBALANCER + - ':lbaas:neutron.services.loadbalancer.' - 'drivers.noop.noop_driver.NoopLbaaSDriver:default') + ':lbaas:' + NOOP_DRIVER_KLASS + ':default') cfg.CONF.set_override('service_provider', [lbaas_provider], 'service_providers') @@ -584,8 +643,7 @@ class TestLoadBalancer(LoadBalancerPluginDbTestCase): def _create_pool_directly_via_plugin(self, provider_name): #default provider will be haproxy prov1 = (constants.LOADBALANCER + - ':lbaas:neutron.services.loadbalancer.' - 'drivers.noop.noop_driver.NoopLbaaSDriver') + ':lbaas:' + NOOP_DRIVER_KLASS) prov2 = (constants.LOADBALANCER + ':haproxy:neutron.services.loadbalancer.' 'drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver' @@ -1461,9 +1519,8 @@ class TestLoadBalancer(LoadBalancerPluginDbTestCase): #removing driver cfg.CONF.set_override('service_provider', [constants.LOADBALANCER + - ':lbaas1:neutron.services.loadbalancer.' - 'drivers.noop.noop_driver.' - 'NoopLbaaSDriver:default'], + ':lbaas1:' + NOOP_DRIVER_KLASS + + ':default'], 'service_providers') sdb.ServiceTypeManager._instance = None # calling _remove_orphan... in constructor