def test_execute(self, mock_finalize, mock_execute, mock_initialize):
c1 = Chain('c1')
l1 = Link('l1')
l2 = Link('l2')
l3 = Link('l3')
# test happy flow
c1.links = [l1, l2, l3]
mock_initialize.return_value = StatusCode.Success
mock_execute.return_value = StatusCode.Success
mock_finalize.return_value = StatusCode.Success
mock_parent = mock.MagicMock(autospec=True)
mock_parent.attach_mock(mock_initialize, 'initialize')
mock_parent.attach_mock(mock_execute, 'execute')
mock_parent.attach_mock(mock_finalize, 'finalize')
status = c1.initialize()
self.assertEqual(status, StatusCode.Success)
status = c1.execute()
self.assertEqual(status, StatusCode.Success)
status = c1.finalize()
self.assertEqual(status, StatusCode.Success)
calls = [mock.call.initialize()]*3 + [mock.call.execute()]*3 + [mock.call.finalize()]*3
mock_parent.assert_has_calls(calls, any_order=False)
评论列表
文章目录