def test_is_retriable_exception_false(self, mock_client_error): mock_client_error.response = { 'Error': { 'Code': 'NotRetriableException' }, 'ResponseMetadata': { 'HTTPStatusCode': 200 } } self.assertFalse(is_retriable_exception(mock_client_error))
def test_is_retriable_exception_is_500_response_code( self, mock_client_error): mock_client_error.response = { 'ResponseMetadata': { 'HTTPStatusCode': 500 }, 'Error': { 'Code': 'NotRetriableException' } } self.assertTrue(is_retriable_exception(mock_client_error))
def test_is_retriable_exception_is_SocketTimeoutException( self, mock_client_error): mock_client_error.response = { 'Error': { 'Code': 'SocketTimeoutException' }, 'ResponseMetadata': { 'HTTPStatusCode': 200 } } self.assertTrue(is_retriable_exception(mock_client_error))
def test_is_retryable_exception_false(self): clientError = ClientError( { 'Error': { 'Code': 'NotRetriableException' }, 'ResponseMetadata': { 'HTTPStatusCode': 200 } }, 'SendCommand') self.assertFalse(is_retriable_exception(clientError))
def test_is_retryable_exception_is_500_response_code(self): clientError = ClientError( { 'ResponseMetadata': { 'HTTPStatusCode': 500 }, 'Error': { 'Code': 'RetryableException' } }, 'SendCommand') self.assertTrue(is_retriable_exception(clientError))
def test_is_retryable_exception_is_invalid_session_exception(self): clientError = ClientError( { 'Error': { 'Code': 'InvalidSessionException' }, 'ResponseMetadata': { 'HTTPStatusCode': 100 } }, 'SendCommand') self.assertTrue(is_retriable_exception(clientError))
def test_is_retryable_exception_is_occ_conflict_exception(self): clientError = ClientError( { 'Error': { 'Code': 'OccConflictException' }, 'ResponseMetadata': { 'HTTPStatusCode': 100 } }, 'SendCommand') self.assertTrue(is_retriable_exception(clientError))
def test_is_retryable_exception_is_SocketTimeoutException(self): clientError = ClientError( { 'Error': { 'Code': 'SocketTimeoutException' }, 'ResponseMetadata': { 'HTTPStatusCode': 200 } }, 'SendCommand') self.assertTrue(is_retriable_exception(clientError))
def test_is_retryable_exception_is_expired_transaction_exception(self): clientError = ClientError( { 'Error': { 'Code': 'InvalidSessionException', 'Message': 'Transaction xyz has expired' }, 'ResponseMetadata': { 'HTTPStatusCode': 100 } }, 'SendCommand') self.assertFalse(is_retriable_exception(clientError))
def test_is_retryable_exception_not_client_exception(self): self.assertFalse(is_retriable_exception(Exception()))