]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Moved extensions/qos_agent.py into extensions/qos.py
authorIhar Hrachyshka <ihrachys@redhat.com>
Fri, 7 Aug 2015 06:15:17 +0000 (08:15 +0200)
committerIhar Hrachyshka <ihrachys@redhat.com>
Fri, 7 Aug 2015 19:38:13 +0000 (19:38 +0000)
This file does not contain any separate QoS agent but just an extension
for existing l2 agents to reuse.

Change-Id: I0587d89b0e841e5fd19b91157602efb5aa97513e
Partially-Implements: blueprint quantum-qos-api

doc/source/devref/quality_of_service.rst
neutron/agent/l2/extensions/qos.py [moved from neutron/agent/l2/extensions/qos_agent.py with 100% similarity]
neutron/plugins/ml2/drivers/openvswitch/agent/extension_drivers/qos_driver.py
neutron/tests/unit/agent/l2/extensions/test_qos.py [moved from neutron/tests/unit/agent/l2/extensions/test_qos_agent.py with 69% similarity]
neutron/tests/unit/agent/l2/test_agent_extensions_manager.py
setup.cfg

index 5895122f799b4d65889493e58b85ba97b68352da..01cf2640696bad1f08f92b35f2f569173e0dd03a 100644 (file)
@@ -208,7 +208,7 @@ with them.
   This module contains a manager that allows to register multiple extensions,
   and passes handle_port events down to all enabled extensions.
 
-* neutron.agent.l2.extensions.qos_agent:
+* neutron.agent.l2.extensions.qos
   defines QoS L2 agent extension. It receives handle_port events and passes
   them into QoS agent backend driver (see below). The file also defines the
   QosAgentDriver interface for backend QoS drivers.
index 0ef312077e2a425df9df4dd8e51a30e78bb5999d..c947748115694e2c18cf5c0df44006d6f281c41a 100644 (file)
@@ -16,7 +16,7 @@ from oslo_config import cfg
 from oslo_log import log as logging
 
 from neutron.agent.common import ovs_lib
-from neutron.agent.l2.extensions import qos_agent
+from neutron.agent.l2.extensions import qos
 from neutron.i18n import _LW
 from neutron.plugins.ml2.drivers.openvswitch.mech_driver import (
     mech_openvswitch)
@@ -24,7 +24,7 @@ from neutron.plugins.ml2.drivers.openvswitch.mech_driver import (
 LOG = logging.getLogger(__name__)
 
 
-class QosOVSAgentDriver(qos_agent.QosAgentDriver):
+class QosOVSAgentDriver(qos.QosAgentDriver):
 
     _SUPPORTED_RULES = (
         mech_openvswitch.OpenvswitchMechanismDriver.supported_qos_rule_types)
similarity index 69%
rename from neutron/tests/unit/agent/l2/extensions/test_qos_agent.py
rename to neutron/tests/unit/agent/l2/extensions/test_qos.py
index 36098caf4c05e34a520fd1a624f4f1c5c2fb34d3..8772394bdb1c055f9b776c1f6a7f0a797341cde0 100755 (executable)
@@ -16,7 +16,7 @@
 import mock
 from oslo_utils import uuidutils
 
-from neutron.agent.l2.extensions import qos_agent
+from neutron.agent.l2.extensions import qos
 from neutron.api.rpc.callbacks import resources
 from neutron import context
 from neutron.tests import base
@@ -30,21 +30,21 @@ class QosAgentExtensionTestCase(base.BaseTestCase):
 
     def setUp(self):
         super(QosAgentExtensionTestCase, self).setUp()
-        self.qos_agent = qos_agent.QosAgentExtension()
+        self.qos_ext = qos.QosAgentExtension()
         self.context = context.get_admin_context()
 
         # Don't rely on used driver
         mock.patch(
             'neutron.manager.NeutronManager.load_class_for_provider',
-            return_value=lambda: mock.Mock(spec=qos_agent.QosAgentDriver)
+            return_value=lambda: mock.Mock(spec=qos.QosAgentDriver)
         ).start()
 
-        self.qos_agent.initialize()
+        self.qos_ext.initialize()
         self._create_fake_resource_rpc()
 
     def _create_fake_resource_rpc(self):
         self.get_info_mock = mock.Mock(return_value=TEST_GET_INFO_RULES)
-        self.qos_agent.resource_rpc.get_info = self.get_info_mock
+        self.qos_ext.resource_rpc.get_info = self.get_info_mock
 
     def _create_test_port_dict(self):
         return {'port_id': uuidutils.generate_uuid(),
@@ -53,37 +53,37 @@ class QosAgentExtensionTestCase(base.BaseTestCase):
     def test_handle_port_with_no_policy(self):
         port = self._create_test_port_dict()
         del port['qos_policy_id']
-        self.qos_agent._process_rules_updates = mock.Mock()
-        self.qos_agent.handle_port(self.context, port)
-        self.assertFalse(self.qos_agent._process_rules_updates.called)
+        self.qos_ext._process_rules_updates = mock.Mock()
+        self.qos_ext.handle_port(self.context, port)
+        self.assertFalse(self.qos_ext._process_rules_updates.called)
 
     def test_handle_unknown_port(self):
         port = self._create_test_port_dict()
         qos_policy_id = port['qos_policy_id']
         port_id = port['port_id']
-        self.qos_agent.handle_port(self.context, port)
+        self.qos_ext.handle_port(self.context, port)
         # we make sure the underlaying qos driver is called with the
         # right parameters
-        self.qos_agent.qos_driver.create.assert_called_once_with(
+        self.qos_ext.qos_driver.create.assert_called_once_with(
             port, TEST_GET_INFO_RULES)
         self.assertEqual(port,
-            self.qos_agent.qos_policy_ports[qos_policy_id][port_id])
-        self.assertTrue(port_id in self.qos_agent.known_ports)
+            self.qos_ext.qos_policy_ports[qos_policy_id][port_id])
+        self.assertTrue(port_id in self.qos_ext.known_ports)
 
     def test_handle_known_port(self):
         port_obj1 = self._create_test_port_dict()
         port_obj2 = dict(port_obj1)
-        self.qos_agent.handle_port(self.context, port_obj1)
-        self.qos_agent.qos_driver.reset_mock()
-        self.qos_agent.handle_port(self.context, port_obj2)
-        self.assertFalse(self.qos_agent.qos_driver.create.called)
+        self.qos_ext.handle_port(self.context, port_obj1)
+        self.qos_ext.qos_driver.reset_mock()
+        self.qos_ext.handle_port(self.context, port_obj2)
+        self.assertFalse(self.qos_ext.qos_driver.create.called)
 
     def test_handle_known_port_change_policy_id(self):
         port = self._create_test_port_dict()
-        self.qos_agent.handle_port(self.context, port)
-        self.qos_agent.resource_rpc.get_info.reset_mock()
+        self.qos_ext.handle_port(self.context, port)
+        self.qos_ext.resource_rpc.get_info.reset_mock()
         port['qos_policy_id'] = uuidutils.generate_uuid()
-        self.qos_agent.handle_port(self.context, port)
+        self.qos_ext.handle_port(self.context, port)
         self.get_info_mock.assert_called_once_with(
              self.context, resources.QOS_POLICY,
              port['qos_policy_id'])
index d453cfbabfb304b96df058af60954a8f4c9b5b83..9005aed227159a7f9b940dcba2a2502e9e316283 100644 (file)
@@ -21,7 +21,7 @@ class TestAgentExtensionsManager(base.BaseTestCase):
 
     def setUp(self):
         super(TestAgentExtensionsManager, self).setUp()
-        mock.patch('neutron.agent.l2.extensions.qos_agent.QosAgentExtension',
+        mock.patch('neutron.agent.l2.extensions.qos.QosAgentExtension',
                    autospec=True).start()
         conf = cfg.CONF
         agent_extensions_manager.register_opts(conf)
index 739063a633ab8d5f1f2194e652497a94b7df360b..c9ff7b7c0d00d75247537b2e0d960a13fe886b99 100644 (file)
--- a/setup.cfg
+++ b/setup.cfg
@@ -197,7 +197,7 @@ neutron.ipam_drivers =
     fake = neutron.tests.unit.ipam.fake_driver:FakeDriver
     internal = neutron.ipam.drivers.neutrondb_ipam.driver:NeutronDbPool
 neutron.agent.l2.extensions =
-    qos = neutron.agent.l2.extensions.qos_agent:QosAgentExtension
+    qos = neutron.agent.l2.extensions.qos:QosAgentExtension
 neutron.qos.agent_drivers =
     ovs = neutron.plugins.ml2.drivers.openvswitch.agent.extension_drivers.qos_driver:QosOVSAgentDriver
 # These are for backwards compat with Icehouse notification_driver configuration values