import requests from tests.integration import config from tests.integration.client import OwsContributor class TestGetProductContributors: def test_returns_projects(self, client: OwsContributor, product_id: int) -> None: response = client.get_product_contributors(product_id=product_id) assert response assert response.product.product_id == product_id assert response.contributors is not None def test_returns_404_when_not_found( self, client: OwsContributor, unknown_product_id: int ) -> None: client.get_product_contributors( product_id=unknown_product_id, expected_status_code=404 ) def test_returns_401_without_auth(self, unknown_product_id: int) -> None: response = requests.get( f"{config.QA_BASE_URL}/contributors/{unknown_product_id}/projects", ) assert response.status_code == 401 class TestGetBulkProductContributors: def test_returns_contributors( self, client: OwsContributor, product_ids: list[int] ) -> None: response = client.get_bulk_product_contributors(product_ids=product_ids) assert response assert len(response) > 1 def test_returns_401_without_auth(self, unknown_product_id: int) -> None: response = requests.get( f"{config.QA_BASE_URL}/contributors/bulk-product-contributors?productIds={unknown_product_id}", ) assert response.status_code == 401