Fixed actor_matches_allow bug, closes #836

pull/844/head
Simon Willison 2020-06-11 15:47:19 -07:00
rodzic 29c5ff493a
commit f39f111331
2 zmienionych plików z 3 dodań i 1 usunięć

Wyświetl plik

@ -884,7 +884,7 @@ def actor_matches_allow(actor, allow):
values = [values]
actor_values = actor.get(key)
if actor_values is None:
return False
continue
if not isinstance(actor_values, list):
actor_values = [actor_values]
actor_values = set(actor_values)

Wyświetl plik

@ -497,6 +497,8 @@ def test_multi_params(data, should_raise):
({"id": "garry", "roles": ["staff", "dev"]}, {"roles": ["dev", "otter"]}, True),
({"id": "garry", "roles": []}, {"roles": ["staff"]}, False),
({"id": "garry"}, {"roles": ["staff"]}, False),
# Any single matching key works:
({"id": "root"}, {"bot_id": "my-bot", "id": ["root"]}, True),
],
)
def test_actor_matches_allow(actor, allow, expected):