From 5d9a034e4b3081362db82cbc0f4d12aaf8c7dc32 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Thu, 29 May 2014 20:59:00 -0700 Subject: [PATCH] Remove function replacement with mock patch In the hyperv unit tests, an rpc method is manually replaced with a MagicMock using setattr. This prevents it from being cleaned up by mock.patch.stopall. This patch replaces it with a short-lived patch call in a with statement. Change-Id: I7b10a8115c474977e3acd16dc49d6f3ae67b0c3b Partial-Bug: #1316401 (cherry picked from commit 2df56ffe93fc5d0ce343df683d8846865b73b716) --- neutron/tests/unit/hyperv/test_hyperv_rpcapi.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/neutron/tests/unit/hyperv/test_hyperv_rpcapi.py b/neutron/tests/unit/hyperv/test_hyperv_rpcapi.py index 2765acf0437..4af19fc546b 100644 --- a/neutron/tests/unit/hyperv/test_hyperv_rpcapi.py +++ b/neutron/tests/unit/hyperv/test_hyperv_rpcapi.py @@ -42,14 +42,11 @@ class rpcHyperVApiTestCase(base.BaseTestCase): if rpc_method == 'cast' and method == 'run_instance': kwargs['call'] = False - rpc_method_mock = mock.Mock() - rpc_method_mock.return_value = expected_retval - setattr(rpc, rpc_method, rpc_method_mock) - - retval = getattr(rpcapi, method)(ctxt, **kwargs) + with mock.patch.object(rpc, rpc_method) as rpc_method_mock: + rpc_method_mock.return_value = expected_retval + retval = getattr(rpcapi, method)(ctxt, **kwargs) self.assertEqual(retval, expected_retval) - expected_args = [ctxt, topic, expected_msg] for arg, expected_arg in zip(rpc_method_mock.call_args[0], expected_args):