Skip to content
This repository was archived by the owner on Jun 13, 2025. It is now read-only.

Commit 7e5a1a9

Browse files
undo
1 parent a82089d commit 7e5a1a9

File tree

1 file changed

+28
-34
lines changed

1 file changed

+28
-34
lines changed
Lines changed: 28 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,41 @@
11
from rest_framework.reverse import reverse
22
from rest_framework.test import APITestCase
3-
from shared.django_apps.core.tests.factories import OwnerFactory, RepositoryFactory
3+
from shared.django_apps.core.tests.factories import OwnerFactory
4+
45
from utils.test_utils import Client
5-
from codecov_auth.models import GithubAppInstallation
6-
from graphql_api.types.owner.owner import AI_FEATURES_GH_APP_ID
76

87

9-
class GenAIAuthViewTests(APITestCase):
8+
class PageNumberPaginationTests(APITestCase):
109
def setUp(self):
1110
self.client = Client()
11+
self.owner = OwnerFactory(plan="users-free", plan_user_count=5)
12+
self.users = [
13+
OwnerFactory(organizations=[self.owner.ownerid]),
14+
OwnerFactory(organizations=[self.owner.ownerid]),
15+
OwnerFactory(organizations=[self.owner.ownerid]),
16+
]
17+
18+
def test_pagination_returned_page_size(self):
19+
self.client.force_login_owner(self.owner)
1220

13-
self.owner = OwnerFactory(service="github")
14-
self.repo1 = RepositoryFactory(author=self.owner, name="Repo1")
15-
self.repo2 = RepositoryFactory(author=self.owner, name="Repo2")
21+
def _list(kwargs={}, query_params={}):
22+
if not kwargs:
23+
kwargs = {
24+
"service": self.owner.service,
25+
"owner_username": self.owner.username,
26+
}
27+
return self.client.get(
28+
reverse("users-list", kwargs=kwargs), data=query_params
29+
)
1630

17-
self.ai_install = GithubAppInstallation.objects.create(
18-
app_id=AI_FEATURES_GH_APP_ID,
19-
owner=self.owner,
20-
repository_service_ids=[self.repo1.service_id, self.repo2.service_id],
21-
)
31+
response = _list()
2232

23-
def test_no_owner_id(self):
24-
url = reverse("gen-ai-consent")
25-
self.client.force_login_owner(self.owner)
26-
response = self.client.get(url)
27-
assert response.status_code == 200
28-
assert response.data["is_valid"] is False
33+
assert response.data["total_pages"] == 1
2934

30-
def test_owner_without_install(self):
31-
# Remove the AI installation so it doesn't exist
32-
self.ai_install.delete()
35+
response = _list(query_params={"page_size": "1"})
3336

34-
url = reverse("gen-ai-consent")
35-
self.client.force_login_owner(self.owner)
36-
response = self.client.get(url, data={"owner_id": self.owner.id})
37-
assert response.status_code == 200
38-
assert response.data["is_valid"] is False
37+
assert response.data["total_pages"] == 3
3938

40-
def test_valid_owner_with_install(self):
41-
url = reverse("gen-ai-consent")
42-
self.client.force_login_owner(self.owner)
43-
response = self.client.get(url, data={"owner_id": self.owner.id})
44-
assert response.status_code == 200
45-
assert response.data["is_valid"] is True
46-
assert len(response.data["repos"]) == 2
47-
assert set(response.data["repos"]) == {"Repo1", "Repo2"}
39+
response = _list(query_params={"page_size": "100"})
40+
41+
assert response.data["total_pages"] == 1

0 commit comments

Comments
 (0)