def test_operation_not_available_error(): actual = exceptions.SpnegoError(exceptions.ErrorCode.unavailable) assert isinstance(actual, exceptions.OperationNotAvailableError) assert actual.ERROR_CODE == exceptions.ErrorCode.unavailable assert actual.base_error is None assert actual.message == 'SpnegoError (16): Operation not supported or available'
def test_invalid_token_error(): actual = exceptions.SpnegoError(exceptions.ErrorCode.invalid_token) assert isinstance(actual, exceptions.InvalidTokenError) assert actual.ERROR_CODE == exceptions.ErrorCode.invalid_token assert actual.base_error is None assert actual.message == 'SpnegoError (9): A token was invalid, or the logon was denied'
def test_invalid_token_from_gssapi(): base_error = GSSError(589824, 0) actual = exceptions.SpnegoError(base_error=base_error) assert isinstance(actual, exceptions.InvalidTokenError) assert actual.ERROR_CODE == exceptions.ErrorCode.invalid_token assert actual.base_error == base_error assert actual.message.startswith('SpnegoError (9): Major (589824)')
def test_operation_not_available_from_gssapi(): base_error = GSSError(1048576, 0) actual = exceptions.SpnegoError(base_error=base_error) assert isinstance(actual, exceptions.OperationNotAvailableError) assert actual.ERROR_CODE == exceptions.ErrorCode.unavailable assert actual.base_error == base_error assert actual.message.startswith('SpnegoError (16): Major (1048576): ')
def test_invalid_token_from_sspi(): base_error = WindowsError("Error") base_error.winerror = -2146893048 actual = exceptions.SpnegoError(base_error=base_error) assert isinstance(actual, exceptions.InvalidTokenError) assert actual.ERROR_CODE == exceptions.ErrorCode.invalid_token assert actual.base_error == base_error assert actual.message.startswith('SpnegoError (9): ')
def test_operation_not_available_from_sspi(): base_error = WindowsError("Error") base_error.winerror = -2146893054 actual = exceptions.SpnegoError(base_error=base_error) assert isinstance(actual, exceptions.OperationNotAvailableError) assert actual.ERROR_CODE == exceptions.ErrorCode.unavailable assert actual.base_error == base_error assert actual.message.startswith('SpnegoError (16): ')
def test_spnego_error_unknown_error(): actual = exceptions.SpnegoError(1024) assert isinstance(actual, exceptions.SpnegoError) assert actual.message == 'SpnegoError (1024): Unknown error code'
def test_spnego_error_invalid_base_error_fail(): expected = "base_error of type 'Exception' is not supported, must be a gssapi.exceptions.GSSError or WindowsError" with pytest.raises(ValueError, match=re.escape(expected)): exceptions.SpnegoError(base_error=Exception())
def test_spnego_error_no_code_fail(): expected = "SpnegoError requires either an error_code or base_error" with pytest.raises(ValueError, match=re.escape(expected)): exceptions.SpnegoError()