diff --git a/policy_sentry/querying/actions.py b/policy_sentry/querying/actions.py index f5df5ded7..306c7620c 100644 --- a/policy_sentry/querying/actions.py +++ b/policy_sentry/querying/actions.py @@ -25,8 +25,9 @@ def get_actions_for_service(service_prefix): """ service_prefix_data = get_service_prefix_data(service_prefix) results = [] - for item in service_prefix_data["privileges"]: - results.append(f"{service_prefix}:{item}") + if isinstance(service_prefix_data, dict): + for item in service_prefix_data["privileges"]: + results.append(f"{service_prefix}:{item}") return results diff --git a/test/querying/test_query_actions.py b/test/querying/test_query_actions.py index 9280abcb3..fcd94574c 100644 --- a/test/querying/test_query_actions.py +++ b/test/querying/test_query_actions.py @@ -72,6 +72,13 @@ def test_get_actions_for_service(self): # old: 0.021s # this one: 0.005s + def test_get_actions_for_invalid_service(self): + """querying.actions.get_actions_for_service + for invalid service + """ + output = get_actions_for_service("invalid_service") + self.assertListEqual([], output) + def test_get_privilege_info(self): expected_results_file = os.path.abspath( os.path.join(