]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Make sure we call BaseTestCase.setUp() first
authorIhar Hrachyshka <ihrachys@redhat.com>
Tue, 3 Jun 2014 19:05:20 +0000 (21:05 +0200)
committerIhar Hrachyshka <ihrachys@redhat.com>
Tue, 17 Jun 2014 19:56:24 +0000 (21:56 +0200)
Some test cases instantiate RPC clients in setUp() before calling to
super(). After we port to oslo.messaging, we'll initialize RPC layer in
BaseTestCase, so we should make sure we call there before proceeding
with clients in subclasses.

blueprint oslo-messaging

Change-Id: I6fdcba0ba690c75d1a472b3ad050c21f5f53a1d0

neutron/tests/unit/openvswitch/test_agent_scheduler.py
neutron/tests/unit/vmware/test_agent_scheduler.py

index 6a03e067163a399671318a02fcb927be156cee37..04ef593b5aec53a53ecec3e0b1bfc5203aedb8c6 100644 (file)
@@ -200,7 +200,7 @@ class OvsAgentSchedulerTestCaseBase(test_l3_plugin.L3NatTestCaseMixin,
     l3_plugin = None
 
     def setUp(self):
-        # Save the global RESOURCE_ATTRIBUTE_MAP
+        # Save the global RESOURCE_ATTRIBUTE_MAP before loading plugin
         self.saved_attr_map = {}
         for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
             self.saved_attr_map[resource] = attrs.copy()
@@ -1020,17 +1020,16 @@ class OvsDhcpAgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
                   'ovs_neutron_plugin.OVSNeutronPluginV2')
 
     def setUp(self):
-        self.dhcp_notifier = dhcp_rpc_agent_api.DhcpAgentNotifyAPI()
-        self.dhcp_notifier_cls_p = mock.patch(
-            'neutron.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
-            'DhcpAgentNotifyAPI')
-        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
+        # Save the global RESOURCE_ATTRIBUTE_MAP before loading plugin
         self.saved_attr_map = {}
         for resource, attrs in attributes.RESOURCE_ATTRIBUTE_MAP.iteritems():
             self.saved_attr_map[resource] = attrs.copy()
         super(OvsDhcpAgentNotifierTestCase, self).setUp(self.plugin_str)
+        # the notifier is used to get access to make_msg() method only
+        self.dhcp_notifier = dhcp_rpc_agent_api.DhcpAgentNotifyAPI()
+        self.dhcp_notifier_cast = mock.patch(
+            'neutron.api.rpc.agentnotifiers.dhcp_rpc_agent_api.'
+            'DhcpAgentNotifyAPI.cast').start()
         ext_mgr = extensions.PluginAwareExtensionManager.get_instance()
         self.ext_api = test_extensions.setup_extensions_middleware(ext_mgr)
         self.adminContext = context.get_admin_context()
@@ -1047,20 +1046,19 @@ class OvsDhcpAgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
         attributes.RESOURCE_ATTRIBUTE_MAP = self.saved_attr_map
 
     def test_network_add_to_dhcp_agent_notification(self):
-        with mock.patch.object(self.dhcp_notifier, 'cast') as mock_dhcp:
-            with self.network() as net1:
-                network_id = net1['network']['id']
-                self._register_agent_states()
-                hosta_id = self._get_agent_id(constants.AGENT_TYPE_DHCP,
-                                              DHCP_HOSTA)
-                self._add_network_to_dhcp_agent(hosta_id,
-                                                network_id)
-            mock_dhcp.assert_called_with(
-                mock.ANY,
-                self.dhcp_notifier.make_msg(
-                    'network_create_end',
-                    payload={'network': {'id': network_id}}),
-                topic='dhcp_agent.' + DHCP_HOSTA)
+        with self.network() as net1:
+            network_id = net1['network']['id']
+            self._register_agent_states()
+            hosta_id = self._get_agent_id(constants.AGENT_TYPE_DHCP,
+                                          DHCP_HOSTA)
+            self._add_network_to_dhcp_agent(hosta_id,
+                                            network_id)
+        self.dhcp_notifier_cast.assert_called_with(
+            mock.ANY,
+            self.dhcp_notifier.make_msg(
+                'network_create_end',
+                payload={'network': {'id': network_id}}),
+            topic='dhcp_agent.' + DHCP_HOSTA)
 
     def test_network_remove_from_dhcp_agent_notification(self):
         with self.network(do_delete=False) as net1:
@@ -1070,27 +1068,27 @@ class OvsDhcpAgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
                                           DHCP_HOSTA)
             self._add_network_to_dhcp_agent(hosta_id,
                                             network_id)
-        with mock.patch.object(self.dhcp_notifier, 'cast') as mock_dhcp:
-            self._remove_network_from_dhcp_agent(hosta_id,
-                                                 network_id)
-            mock_dhcp.assert_called_with(
-                mock.ANY,
-                self.dhcp_notifier.make_msg(
-                    'network_delete_end',
-                    payload={'network_id': network_id}),
-                topic='dhcp_agent.' + DHCP_HOSTA)
+
+        self._remove_network_from_dhcp_agent(hosta_id,
+                                             network_id)
+        self.dhcp_notifier_cast.assert_called_with(
+            mock.ANY,
+            self.dhcp_notifier.make_msg(
+                'network_delete_end',
+                payload={'network_id': network_id}),
+            topic='dhcp_agent.' + DHCP_HOSTA)
 
     def test_agent_updated_dhcp_agent_notification(self):
-        with mock.patch.object(self.dhcp_notifier, 'cast') as mock_dhcp:
-            self._register_agent_states()
-            hosta_id = self._get_agent_id(constants.AGENT_TYPE_DHCP,
-                                          DHCP_HOSTA)
-            self._disable_agent(hosta_id, admin_state_up=False)
-            mock_dhcp.assert_called_with(
-                mock.ANY, self.dhcp_notifier.make_msg(
-                    'agent_updated',
-                    payload={'admin_state_up': False}),
-                topic='dhcp_agent.' + DHCP_HOSTA)
+        self._register_agent_states()
+        hosta_id = self._get_agent_id(constants.AGENT_TYPE_DHCP,
+                                      DHCP_HOSTA)
+        self._disable_agent(hosta_id, admin_state_up=False)
+
+        self.dhcp_notifier_cast.assert_called_with(
+            mock.ANY, self.dhcp_notifier.make_msg(
+                'agent_updated',
+                payload={'admin_state_up': False}),
+            topic='dhcp_agent.' + DHCP_HOSTA)
 
     def _network_port_create(
         self, hosts, gateway=attributes.ATTR_NOT_SPECIFIED, owner=None):
@@ -1102,22 +1100,21 @@ class OvsDhcpAgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
                  'configurations': {'dhcp_driver': 'dhcp_driver',
                                     'use_namespaces': True, },
                  'agent_type': constants.AGENT_TYPE_DHCP})
-        with mock.patch.object(self.dhcp_notifier, 'cast') as mock_dhcp:
-            with self.network(do_delete=False) as net1:
-                with self.subnet(network=net1,
-                                 gateway_ip=gateway,
-                                 do_delete=False) as subnet1:
-                    if owner:
-                        with self.port(subnet=subnet1,
-                                       no_delete=True,
-                                       device_owner=owner) as port:
-                            return [mock_dhcp, net1, subnet1, port]
-                    else:
-                        with self.port(subnet=subnet1,
-                                       no_delete=True) as port:
-                            return [mock_dhcp, net1, subnet1, port]
-
-    def _notification_mocks(self, hosts, mock_dhcp, net, subnet, port):
+        with self.network(do_delete=False) as net1:
+            with self.subnet(network=net1,
+                             gateway_ip=gateway,
+                             do_delete=False) as subnet1:
+                if owner:
+                    with self.port(subnet=subnet1,
+                                   no_delete=True,
+                                   device_owner=owner) as port:
+                        return [net1, subnet1, port]
+                else:
+                    with self.port(subnet=subnet1,
+                                   no_delete=True) as port:
+                        return [net1, subnet1, port]
+
+    def _notification_mocks(self, hosts, net, subnet, port):
         host_calls = {}
         for host in hosts:
             expected_calls = [
@@ -1138,21 +1135,20 @@ class OvsDhcpAgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
 
     def test_network_port_create_notification(self):
         hosts = [DHCP_HOSTA]
-        [mock_dhcp, net, subnet, port] = self._network_port_create(hosts)
-        expected_calls = self._notification_mocks(hosts, mock_dhcp,
-                                                  net, subnet, port)
-        self.assertEqual(expected_calls[DHCP_HOSTA], mock_dhcp.call_args_list)
+        net, subnet, port = self._network_port_create(hosts)
+        expected_calls = self._notification_mocks(hosts, net, subnet, port)
+        self.assertEqual(
+            expected_calls[DHCP_HOSTA], self.dhcp_notifier_cast.call_args_list)
 
     def test_network_ha_port_create_notification(self):
         cfg.CONF.set_override('dhcp_agents_per_network', 2)
         hosts = [DHCP_HOSTA, DHCP_HOSTC]
-        [mock_dhcp, net, subnet, port] = self._network_port_create(hosts)
-        expected_calls = self._notification_mocks(hosts, mock_dhcp,
-                                                  net, subnet, port)
+        net, subnet, port = self._network_port_create(hosts)
+        expected_calls = self._notification_mocks(hosts, net, subnet, port)
         for expected in expected_calls[DHCP_HOSTA]:
-            self.assertIn(expected, mock_dhcp.call_args_list)
+            self.assertIn(expected, self.dhcp_notifier_cast.call_args_list)
         for expected in expected_calls[DHCP_HOSTC]:
-            self.assertIn(expected, mock_dhcp.call_args_list)
+            self.assertIn(expected, self.dhcp_notifier_cast.call_args_list)
 
 
 class OvsL3AgentNotifierTestCase(test_l3_plugin.L3NatTestCaseMixin,
index 25665aaeef9026ce750a569c89c6ca829896ba5c..6d1193454f476c5361ee343746d63d130eb84b97 100644 (file)
@@ -52,7 +52,7 @@ class DhcpAgentNotifierTestCase(test_base.OvsDhcpAgentNotifierTestCase):
         cfg.CONF.set_override('metadata_mode', 'dhcp_host_route', 'NSX')
         hosts = ['hosta']
         with mock.patch.object(rpc.LOG, 'info') as mock_log:
-            [mock_dhcp, net, subnet, port] = self._network_port_create(
+            net, subnet, port = self._network_port_create(
                 hosts, gateway=gateway, owner=constants.DEVICE_OWNER_DHCP)
             self.assertEqual(subnet['subnet']['gateway_ip'], gateway)
             called = 1 if gateway is None else 0