Improper exception handling when I have an entitlement that does not conform with the AARC G069 guideline.
"eduperson_entitlement": [
"urn:geant:helmholtz.de:group:KIT#login-dev.helmholtz.de",
...
"urn:mace:dir:entitlement:common-lib-terms"
]
import aarc_entitlement
norm_ent = aarc_entitlement.G069("urn:mace:dir:entitlement:common-lib-terms")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "python/3.10.5/lib/python3.10/site-packages/aarc_entitlement/__init__.py", line 417, in __init__
super().__init__(entitlement)
File "python/3.10.5/lib/python3.10/site-packages/aarc_entitlement/__init__.py", line 204, in __init__
self._parse(self._preprocess(entitlement))
File "python/3.10.5/lib/python3.10/site-packages/aarc_entitlement/__init__.py", line 141, in _parse
raise ParseError(
aarc_entitlement.ParseError: Entitlement does not conform to specification (need_group_authority=False): urn:mace:dir:entitlement:common-lib-terms
...
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/__init__.py", line 526, in async_wrapper
((args, kwargs), error_response) = self._run_work_flow_safe(*args, **kwargs)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/__init__.py", line 507, in _run_work_flow_safe
return (self._run_work_flow(*args, **kwargs), None)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/__init__.py", line 495, in _run_work_flow
self.check_user_authorization(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/__init__.py", line 406, in check_user_authorization
check_result = req.is_satisfied_by(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/motley_cue/mapper/authorisation.py", line 54, in is_satisfied_by
return op_authz.get_user_requirement().is_satisfied_by(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 135, in is_satisfied_by
check_result = req.is_satisfied_by(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 163, in is_satisfied_by
check_result = req.is_satisfied_by(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 135, in is_satisfied_by
check_result = req.is_satisfied_by(user_infos)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 249, in is_satisfied_by
if self.matches(self.value, self.parse(val)):
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 284, in matches
return self._matches(required, available)
File "/usr/lib/motley-cue/lib/python3.9/site-packages/flaat/requirements.py", line 322, in _matches
return available.satisfies(required)
AttributeError: 'NoneType' object has no attribute 'satisfies'
[
"urn:geant:h-df.de:group:test-vo#login-dev.helmholtz.de",
"urn:geant:helmholtz.de:group:Helmholtz-member#login-dev.helmholtz.de",
]