예제 #1
0
 def foo(self):
     if retries[0] == 2:
         retries[0] -= 1
         raise OperationFailure('error')
     elif retries[0] == 1:
         register_log_exception_hook(hook2)
         retries[0] -= 1
         raise AutoReconnect('error')
     return "success"
예제 #2
0
 def foo(self):
     if retries[0] == 2:
         retries[0] -= 1
         raise OperationFailure('error')
     elif retries[0] == 1:
         register_log_exception_hook(hook2)
         retries[0] -= 1
         raise AutoReconnect('error')
     return "success"
예제 #3
0
def test_mongo_retry_hook_changes():
    retries = [2]
    self = MagicMock()
    hook1 = Mock()
    register_log_exception_hook(hook1)
    hook2 = Mock()

    @mongo_retry
    def foo(self):
        if retries[0] == 2:
            retries[0] -= 1
            raise OperationFailure('error')
        elif retries[0] == 1:
            register_log_exception_hook(hook2)
            retries[0] -= 1
            raise AutoReconnect('error')
        return "success"
    foo(self)

    assert hook1.call_count == 1
    assert hook2.call_count == 1
예제 #4
0
def test_mongo_retry_hook_changes():
    retries = [2]
    self = MagicMock()
    hook1 = Mock()
    register_log_exception_hook(hook1)
    hook2 = Mock()

    @mongo_retry
    def foo(self):
        if retries[0] == 2:
            retries[0] -= 1
            raise OperationFailure('error')
        elif retries[0] == 1:
            register_log_exception_hook(hook2)
            retries[0] -= 1
            raise AutoReconnect('error')
        return "success"
    foo(self)

    assert hook1.call_count == 1
    assert hook2.call_count == 1
예제 #5
0
def test_log_exception_hook():
    logger = Mock()
    register_log_exception_hook(logger)
    log_exception(sentinel.fn, sentinel.e, sentinel.r)
    assert logger.call_args_list == [call(sentinel.fn, sentinel.e, sentinel.r)]
예제 #6
0
def test_log_exception_hook():
    logger = Mock()
    register_log_exception_hook(logger)
    log_exception(sentinel.fn, sentinel.e, sentinel.r)
    assert logger.call_args_list == [call(sentinel.fn, sentinel.e, sentinel.r)]