diff --git a/api/tests/performance/scenarios/resources.py b/api/tests/performance/scenarios/resources.py index 94a0f99c21..ffc8e6e2e7 100644 --- a/api/tests/performance/scenarios/resources.py +++ b/api/tests/performance/scenarios/resources.py @@ -1,11 +1,11 @@ from locust import task, events from utils.helpers import ( - APIUserBase, - get_api_token, - get_auth_headers, - get_sort_value, - get_available_resource_filters, - get_next_resource_filter + APIUserBase, + get_api_token, + get_auth_headers, + get_sort_value, + get_available_resource_filters, + get_next_resource_filter, ) from utils.config import ( RESOURCES_UI_SORT_VALUES, @@ -17,7 +17,9 @@ GLOBAL = {"token": None, "resource_ids": [], "resource_filters": None} @events.test_start.add_listener def on_test_start(environment, **kwargs): GLOBAL["token"] = get_api_token(environment.host) - GLOBAL["resource_filters"] = get_available_resource_filters(environment.host, GLOBAL["token"]) + GLOBAL["resource_filters"] = get_available_resource_filters( + environment.host, GLOBAL["token"] + ) class ResourceUser(APIUserBase): @@ -43,21 +45,25 @@ class ResourceUser(APIUserBase): endpoint = ( f"/resources?page[number]={page}" f"&{get_sort_value(RESOURCES_UI_SORT_VALUES)}" - f"&include=findings,provider" + f"&include=findings,provider" ) self.client.get(endpoint, headers=get_auth_headers(self.token), name=name) @task(2) def resource_filter(self): name = "GET /resources (random filter)" - filter_type, filter_value = get_next_resource_filter(self.available_resource_filters) + filter_type, filter_value = get_next_resource_filter( + self.available_resource_filters + ) endpoint = f"/resources?filter[{filter_type}]={filter_value}" self.client.get(endpoint, headers=get_auth_headers(self.token), name=name) @task(2) def resource_filter_with_include(self): name = "GET /resources (random filter + include)" - filter_type, filter_value = get_next_resource_filter(self.available_resource_filters) + filter_type, filter_value = get_next_resource_filter( + self.available_resource_filters + ) endpoint = ( f"/resources?filter[{filter_type}]={filter_value}" f"&include=findings,provider" diff --git a/api/tests/performance/utils/helpers.py b/api/tests/performance/utils/helpers.py index e76b21b3e7..2fdc24185e 100644 --- a/api/tests/performance/utils/helpers.py +++ b/api/tests/performance/utils/helpers.py @@ -167,6 +167,7 @@ def get_sort_value(sort_values: list) -> str: """ return f"sort={','.join(sort_values)}" + def get_available_resource_filters(host: str, token: str) -> dict: """ Fetches and returns available resource filter values from the API. @@ -187,11 +188,9 @@ def get_available_resource_filters(host: str, token: str) -> dict: Raises: AssertionError: If the API request fails or does not return a 200 status code. """ - + url = f"{host}/resources" - params = { - "fields[resources]": "type,region,service" - } + params = {"fields[resources]": "type,region,service"} response = requests.get(url, headers=get_auth_headers(token), params=params) assert response.status_code == 200, f"Failed to fetch filters: {response.text}"