Replace mox3 with mock
In heatclient, some unit tests still use mox3, which will make the test speed much slow, so I decide to remove it. The first file: heatclient/tests/unit/test_events.py Change-Id: Ife264461d64b0cb89b251a0aefe0e5f255b39ce3 Implements: bp remove-mox3-in-heatclient
This commit is contained in:
@@ -13,7 +13,6 @@
|
||||
# under the License.
|
||||
|
||||
import mock
|
||||
import mox
|
||||
import testtools
|
||||
|
||||
from heatclient.common import utils
|
||||
@@ -22,39 +21,39 @@ from heatclient.v1 import events
|
||||
|
||||
class EventManagerTest(testtools.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
super(EventManagerTest, self).setUp()
|
||||
self.m = mox.Mox()
|
||||
self.addCleanup(self.m.VerifyAll)
|
||||
self.addCleanup(self.m.UnsetStubs)
|
||||
|
||||
def test_list_event(self):
|
||||
stack_id = 'teststack',
|
||||
resource_name = 'testresource'
|
||||
manager = events.EventManager(None)
|
||||
self.m.StubOutWithMock(manager, '_resolve_stack_id')
|
||||
manager._resolve_stack_id(stack_id).AndReturn('teststack/abcd1234')
|
||||
self.m.ReplayAll()
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name)
|
||||
# Make sure url is correct.
|
||||
manager._list.assert_called_once_with('/stacks/teststack%2Fabcd1234/'
|
||||
'resources/testresource/events',
|
||||
"events")
|
||||
with mock.patch('heatclient.v1.events.EventManager._resolve_stack_id')\
|
||||
as mock_re:
|
||||
mock_re.return_value = 'teststack/abcd1234'
|
||||
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name)
|
||||
# Make sure url is correct.
|
||||
manager._list.assert_called_once_with(
|
||||
'/stacks/teststack%2Fabcd1234/'
|
||||
'resources/testresource/events',
|
||||
"events")
|
||||
mock_re.assert_called_once_with(stack_id)
|
||||
|
||||
def test_list_event_with_unicode_resource_name(self):
|
||||
stack_id = 'teststack',
|
||||
resource_name = u'\u5de5\u4f5c'
|
||||
manager = events.EventManager(None)
|
||||
self.m.StubOutWithMock(manager, '_resolve_stack_id')
|
||||
manager._resolve_stack_id(stack_id).AndReturn('teststack/abcd1234')
|
||||
self.m.ReplayAll()
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name)
|
||||
# Make sure url is correct.
|
||||
manager._list.assert_called_once_with('/stacks/teststack%2Fabcd1234/'
|
||||
'resources/%E5%B7%A5%E4%BD%9C/'
|
||||
'events', "events")
|
||||
with mock.patch('heatclient.v1.events.EventManager._resolve_stack_id')\
|
||||
as mock_re:
|
||||
mock_re.return_value = 'teststack/abcd1234'
|
||||
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name)
|
||||
# Make sure url is correct.
|
||||
manager._list.assert_called_once_with(
|
||||
'/stacks/teststack%2Fabcd1234/'
|
||||
'resources/%E5%B7%A5%E4%BD%9C/'
|
||||
'events', "events")
|
||||
mock_re.assert_called_once_with(stack_id)
|
||||
|
||||
def test_list_event_with_none_resource_name(self):
|
||||
stack_id = 'teststack',
|
||||
@@ -75,28 +74,33 @@ class EventManagerTest(testtools.TestCase):
|
||||
'resource_status': 'COMPLETE'
|
||||
}}
|
||||
manager = events.EventManager(None)
|
||||
self.m.StubOutWithMock(manager, '_resolve_stack_id')
|
||||
manager._resolve_stack_id(stack_id).AndReturn('teststack/abcd1234')
|
||||
self.m.ReplayAll()
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name, **kwargs)
|
||||
# Make sure url is correct.
|
||||
self.assertEqual(1, manager._list.call_count)
|
||||
args = manager._list.call_args
|
||||
self.assertEqual(2, len(args[0]))
|
||||
url, param = args[0]
|
||||
self.assertEqual("events", param)
|
||||
base_url, query_params = utils.parse_query_url(url)
|
||||
expected_base_url = ('/stacks/teststack%2Fabcd1234/'
|
||||
'resources/testresource/events')
|
||||
self.assertEqual(expected_base_url, base_url)
|
||||
expected_query_dict = {'marker': ['6d6935f4-0ae5'],
|
||||
'limit': ['2'],
|
||||
'resource_action': ['CREATE'],
|
||||
'resource_status': ['COMPLETE']}
|
||||
self.assertEqual(expected_query_dict, query_params)
|
||||
manager = events.EventManager(None)
|
||||
with mock.patch('heatclient.v1.events.EventManager._resolve_stack_id')\
|
||||
as mock_re:
|
||||
mock_re.return_value = 'teststack/abcd1234'
|
||||
|
||||
def test_get_event(self):
|
||||
manager._list = mock.MagicMock()
|
||||
manager.list(stack_id, resource_name, **kwargs)
|
||||
# Make sure url is correct.
|
||||
self.assertEqual(1, manager._list.call_count)
|
||||
args = manager._list.call_args
|
||||
self.assertEqual(2, len(args[0]))
|
||||
url, param = args[0]
|
||||
self.assertEqual("events", param)
|
||||
base_url, query_params = utils.parse_query_url(url)
|
||||
expected_base_url = ('/stacks/teststack%2Fabcd1234/'
|
||||
'resources/testresource/events')
|
||||
self.assertEqual(expected_base_url, base_url)
|
||||
expected_query_dict = {'marker': ['6d6935f4-0ae5'],
|
||||
'limit': ['2'],
|
||||
'resource_action': ['CREATE'],
|
||||
'resource_status': ['COMPLETE']}
|
||||
self.assertEqual(expected_query_dict, query_params)
|
||||
mock_re.assert_called_once_with(stack_id)
|
||||
|
||||
@mock.patch('heatclient.v1.events.EventManager._resolve_stack_id')
|
||||
@mock.patch('heatclient.common.utils.get_response_body')
|
||||
def test_get_event(self, mock_utils, mock_re):
|
||||
fields = {'stack_id': 'teststack',
|
||||
'resource_name': 'testresource',
|
||||
'event_id': '1'}
|
||||
@@ -116,15 +120,14 @@ class EventManagerTest(testtools.TestCase):
|
||||
|
||||
manager = events.EventManager(FakeAPI())
|
||||
with mock.patch('heatclient.v1.events.Event'):
|
||||
self.m.StubOutWithMock(manager, '_resolve_stack_id')
|
||||
self.m.StubOutWithMock(utils, 'get_response_body')
|
||||
utils.get_response_body(mox.IgnoreArg()).AndReturn({'event': []})
|
||||
manager._resolve_stack_id('teststack').AndReturn(
|
||||
'teststack/abcd1234')
|
||||
self.m.ReplayAll()
|
||||
mock_utils.return_value = {'event': []}
|
||||
mock_re.return_value = 'teststack/abcd1234'
|
||||
manager.get(**fields)
|
||||
mock_re.assert_called_once_with('teststack')
|
||||
|
||||
def test_get_event_with_unicode_resource_name(self):
|
||||
@mock.patch('heatclient.v1.events.EventManager._resolve_stack_id')
|
||||
@mock.patch('heatclient.common.utils.get_response_body')
|
||||
def test_get_event_with_unicode_resource_name(self, mock_utils, mock_re):
|
||||
fields = {'stack_id': 'teststack',
|
||||
'resource_name': u'\u5de5\u4f5c',
|
||||
'event_id': '1'}
|
||||
@@ -144,10 +147,7 @@ class EventManagerTest(testtools.TestCase):
|
||||
|
||||
manager = events.EventManager(FakeAPI())
|
||||
with mock.patch('heatclient.v1.events.Event'):
|
||||
self.m.StubOutWithMock(manager, '_resolve_stack_id')
|
||||
self.m.StubOutWithMock(utils, 'get_response_body')
|
||||
utils.get_response_body(mox.IgnoreArg()).AndReturn({'event': []})
|
||||
manager._resolve_stack_id('teststack').AndReturn(
|
||||
'teststack/abcd1234')
|
||||
self.m.ReplayAll()
|
||||
mock_utils.return_value = {'event': []}
|
||||
mock_re.return_value = 'teststack/abcd1234'
|
||||
manager.get(**fields)
|
||||
mock_re.assert_called_once_with('teststack')
|
||||
|
Reference in New Issue
Block a user