def test_rollback_exception(self, name, has_post): model = MagicMock() post_action = None if has_post: post_action = MagicMock() rollback.os = MagicMock() def called_method(ref): ref.rollback_logger['files'].append('/home/test/testfile.pdf') ref.rollback_logger['models'].append(model) raise ValueError('Value error') wrap = rollback.rollback(post_action=post_action) wrapper = wrap(called_method) wrapper_ref = MagicMock() error = False try: wrapper(wrapper_ref) except ValueError as e: error = True self.assertEquals('Value error', unicode(e)) self.assertTrue(error) rollback.os.remove.assert_called_once_with('/home/test/testfile.pdf') model.delete.assert_called_once_with() if has_post: post_action.assert_called_once_with(wrapper_ref)
def test_rollback_exception(self, name, has_post): model = MagicMock() post_action = None if has_post: post_action = MagicMock() rollback.os = MagicMock() def called_method(ref): ref.rollback_logger['files'].append('/home/test/testfile.pdf') ref.rollback_logger['models'].append(model) raise ValueError('Value error') wrap = rollback.rollback(post_action=post_action) wrapper = wrap(called_method) error = False try: wrapper(MagicMock()) except ValueError as e: error = True self.assertEquals('Value error', unicode(e)) self.assertTrue(error) rollback.os.remove.assert_called_once_with('/home/test/testfile.pdf') model.delete.assert_called_once_with() if has_post: post_action.assert_called_once_with()
def test_rollback_correct(self): called_method = MagicMock() called_method.return_value = 'Returned' wrap = rollback.rollback() wrapper = wrap(called_method) ref = MagicMock() value = wrapper(ref, 'value') called_method.assert_called_once_with(ref, 'value') self.assertEquals('Returned', value) self.assertEquals({'files': [], 'models': []}, ref.rollback_logger)
def test_rollback_correct(self): called_method = MagicMock() called_method.return_value = 'Returned' wrap = rollback.rollback() wrapper = wrap(called_method) ref = MagicMock() value = wrapper(ref, 'value') called_method.assert_called_once_with(ref, 'value') self.assertEquals('Returned', value) self.assertEquals({ 'files': [], 'models': [] }, ref.rollback_logger)