2024-11-19 09:52:23 -03:00
|
|
|
import json
|
|
|
|
|
|
|
|
|
|
import httpretty
|
|
|
|
|
|
|
|
|
|
|
2024-11-28 16:03:07 -03:00
|
|
|
def setup_service_account_api_mocks(grafana_url, perms=None, user_data=None, perms_status=200, user_status=200):
|
2024-11-19 09:52:23 -03:00
|
|
|
# requires enabling httpretty
|
|
|
|
|
if perms is None:
|
|
|
|
|
perms = {}
|
|
|
|
|
mock_response = httpretty.Response(status=perms_status, body=json.dumps(perms))
|
2024-11-28 16:03:07 -03:00
|
|
|
perms_url = f"{grafana_url}/api/access-control/user/permissions"
|
2024-11-19 09:52:23 -03:00
|
|
|
httpretty.register_uri(httpretty.GET, perms_url, responses=[mock_response])
|
|
|
|
|
|
|
|
|
|
if user_data is None:
|
|
|
|
|
user_data = {"login": "some-login", "uid": "service-account:42"}
|
|
|
|
|
mock_response = httpretty.Response(status=user_status, body=json.dumps(user_data))
|
2024-11-28 16:03:07 -03:00
|
|
|
user_url = f"{grafana_url}/api/user"
|
2024-11-19 09:52:23 -03:00
|
|
|
httpretty.register_uri(httpretty.GET, user_url, responses=[mock_response])
|