|
@@ -1,3 +1,4 @@
|
|
|
+from django.conf import settings
|
|
|
from rest_framework.test import APITestCase
|
|
|
from model_bakery import baker
|
|
|
from glitchtip import test_utils # pylint: disable=unused-import
|
|
@@ -30,3 +31,16 @@ class ProjectsAPITestCase(APITestCase):
|
|
|
res = self.client.post(self.url, data)
|
|
|
self.assertContains(res, name, status_code=201)
|
|
|
self.assertEqual(ProjectKey.objects.all().count(), 2)
|
|
|
+
|
|
|
+ def test_projects_pagination(self):
|
|
|
+ """
|
|
|
+ Test link header pagination
|
|
|
+ """
|
|
|
+ page_size = settings.REST_FRAMEWORK.get("PAGE_SIZE")
|
|
|
+ projects = baker.make("projects.Project", _quantity=page_size + 1)
|
|
|
+ res = self.client.get(self.url)
|
|
|
+ self.assertNotContains(res, projects[0].name)
|
|
|
+ self.assertContains(res, projects[-1].name)
|
|
|
+ link_header = res.get("Link")
|
|
|
+ self.assertIn('results="true"', link_header)
|
|
|
+
|