def test_dispatch_calls_method_and_responds(dispatch, mock_request): m = Mock() m.subtract = Mock(return_value=-2) dispatch.add_method(m.subtract, 'subtract') response = dispatch.dispatch(mock_request) assert m.subtract.called mock_request.respond.assert_called_with(-2)
def test_dispatch_handles_in_function_exceptions(dispatch, mock_request): m = Mock() m.subtract = Mock(return_value=-2) class MockError(Exception): pass m.subtract.side_effect = MockError('mock error') dispatch.add_method(m.subtract, 'subtract') response = dispatch.dispatch(mock_request) assert m.subtract.called mock_request.error_respond.assert_called_with(m.subtract.side_effect)