mirror of
https://github.com/django/django.git
synced 2025-10-24 14:16:09 +00:00
Fixed #28032 -- Added Paginator.get_page().
Moved boilerplate from docs to a method.
This commit is contained in:
committed by
Tim Graham
parent
5b1c389603
commit
407c1249c9
@@ -242,6 +242,38 @@ class PaginationTests(unittest.TestCase):
|
||||
"""
|
||||
self.assertIsInstance(Paginator([1, 2, 3], 2).page_range, type(range(0)))
|
||||
|
||||
def test_get_page(self):
|
||||
"""
|
||||
Paginator.get_page() returns a valid page even with invalid page
|
||||
arguments.
|
||||
"""
|
||||
paginator = Paginator([1, 2, 3], 2)
|
||||
page = paginator.get_page(1)
|
||||
self.assertEqual(page.number, 1)
|
||||
self.assertEqual(page.object_list, [1, 2])
|
||||
# An empty page returns the last page.
|
||||
self.assertEqual(paginator.get_page(3).number, 2)
|
||||
# Non-integer page returns the first page.
|
||||
self.assertEqual(paginator.get_page(None).number, 1)
|
||||
|
||||
def test_get_page_empty_object_list(self):
|
||||
"""Paginator.get_page() with an empty object_list."""
|
||||
paginator = Paginator([], 2)
|
||||
# An empty page returns the last page.
|
||||
self.assertEqual(paginator.get_page(1).number, 1)
|
||||
self.assertEqual(paginator.get_page(2).number, 1)
|
||||
# Non-integer page returns the first page.
|
||||
self.assertEqual(paginator.get_page(None).number, 1)
|
||||
|
||||
def test_get_page_empty_object_list_and_allow_empty_first_page_false(self):
|
||||
"""
|
||||
Paginator.get_page() raises EmptyPage if allow_empty_first_page=False
|
||||
and object_list is empty.
|
||||
"""
|
||||
paginator = Paginator([], 2, allow_empty_first_page=False)
|
||||
with self.assertRaises(EmptyPage):
|
||||
paginator.get_page(1)
|
||||
|
||||
|
||||
class ModelPaginationTests(TestCase):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user