import httpx import pytest from tests.integration.config import TEST_GLOBAL_PARTICIPANT_ID, TEST_VENDOR_ID from tests.integration.dtos import TestUser from tests.integration.utils import get_user_email @pytest.mark.parametrize( "authenticated_client_with_email,expected_status", [ (get_user_email(TestUser.BASIC), 200), (get_user_email(TestUser.NO_ACCESS), 403), ], indirect=["authenticated_client_with_email"], ) def test_artist_fans_count( authenticated_client_with_email: httpx.Client, expected_status: int ) -> None: response = authenticated_client_with_email.get( f"/artists/{TEST_GLOBAL_PARTICIPANT_ID}/fans-count", params={"vendorId": TEST_VENDOR_ID, "subaccountId": 0}, ) assert response.status_code == expected_status if response.status_code == 200: data = response.json() assert data.get("fansCount") @pytest.mark.parametrize( "authenticated_client_with_email,expected_status", [ (get_user_email(TestUser.BASIC), 200), (get_user_email(TestUser.NO_ACCESS), 403), ], indirect=["authenticated_client_with_email"], ) def test_roster( authenticated_client_with_email: httpx.Client, expected_status: int ) -> None: response = authenticated_client_with_email.get( "/rosters", ) assert response.status_code == expected_status