kopia lustrzana https://github.com/wagtail/wagtail
Remove custom paginate_queryset method on IndexView
The sole purpose of this was to preserve the historical behaviour of accepting non-integer page numbers, which was mandated by the unit tests for no clear reason - it's likely that these tests were written to reflect the existing behaviour rather than the desired behaviour. Dropping this (and updating the tests) brings the behaviour in line with Django's standard.pull/10533/head
rodzic
7b3b55ff93
commit
8e106f40c6
|
@ -240,18 +240,6 @@ class IndexView(
|
|||
|
||||
return queryset
|
||||
|
||||
def paginate_queryset(self, queryset, page_size):
|
||||
paginator = self.get_paginator(
|
||||
queryset,
|
||||
page_size,
|
||||
orphans=self.get_paginate_orphans(),
|
||||
allow_empty_first_page=self.get_allow_empty(),
|
||||
)
|
||||
|
||||
page_number = self.request.GET.get(self.page_kwarg)
|
||||
page = paginator.get_page(page_number)
|
||||
return (paginator, page, page.object_list, page.has_other_pages())
|
||||
|
||||
def filter_queryset(self, queryset):
|
||||
# construct filter instance (self.filters) if not created already
|
||||
if self.filterset_class and self.filters is None:
|
||||
|
|
|
@ -135,12 +135,13 @@ class TestSnippetListView(WagtailTestUtils, TestCase):
|
|||
self.assertEqual(response.context["page_obj"][0].text, "advert 10")
|
||||
|
||||
def test_simple_pagination(self):
|
||||
|
||||
pages = ["0", "1", "-1", "9999", "Not a page"]
|
||||
for page in pages:
|
||||
response = self.get({"p": page})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertTemplateUsed(response, "wagtailsnippets/snippets/index.html")
|
||||
# page numbers in range should be accepted
|
||||
response = self.get({"p": 1})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertTemplateUsed(response, "wagtailsnippets/snippets/index.html")
|
||||
# page numbers out of range should return 404
|
||||
response = self.get({"p": 9999})
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_displays_add_button(self):
|
||||
self.assertContains(self.get(), "Add advert")
|
||||
|
|
|
@ -136,10 +136,12 @@ class TestGroupUsersView(WagtailTestUtils, TestCase):
|
|||
self.assertIn(self.test_user, results)
|
||||
|
||||
def test_pagination(self):
|
||||
pages = ["0", "1", "-1", "9999", "Not a page"]
|
||||
for page in pages:
|
||||
response = self.get({"p": page})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
# page numbers in range should be accepted
|
||||
response = self.get({"p": 1})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
# page numbers out of range should return 404
|
||||
response = self.get({"p": 9999})
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
|
||||
class TestGroupUsersResultsView(WagtailTestUtils, TestCase):
|
||||
|
@ -226,10 +228,12 @@ class TestUserIndexView(WagtailTestUtils, TestCase):
|
|||
self.assertIn(self.test_user, results)
|
||||
|
||||
def test_pagination(self):
|
||||
pages = ["0", "1", "-1", "9999", "Not a page"]
|
||||
for page in pages:
|
||||
response = self.get({"p": page})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
# page numbers in range should be accepted
|
||||
response = self.get({"p": 1})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
# page numbers out of range should return 404
|
||||
response = self.get({"p": 9999})
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_valid_ordering(self):
|
||||
# checking that only valid ordering used, in case of `IndexView` the valid
|
||||
|
|
Ładowanie…
Reference in New Issue