diff options
Diffstat (limited to 'hyperkitty/tests')
-rw-r--r-- | hyperkitty/tests/test_lib.py | 52 |
1 files changed, 51 insertions, 1 deletions
diff --git a/hyperkitty/tests/test_lib.py b/hyperkitty/tests/test_lib.py index fb560ae..b24f5c4 100644 --- a/hyperkitty/tests/test_lib.py +++ b/hyperkitty/tests/test_lib.py @@ -23,7 +23,7 @@ import datetime from django.test import TestCase -from hyperkitty.lib import get_display_dates +from hyperkitty.lib import get_display_dates, paginate class GetDisplayDatesTestCase(TestCase): @@ -45,3 +45,53 @@ class GetDisplayDatesTestCase(TestCase): begin_date, end_date = get_display_dates('2012', '4', '2') self.assertEqual(begin_date, datetime.datetime(2012, 4, 2)) self.assertEqual(end_date, datetime.datetime(2012, 4, 3)) + + +class PaginateTestCase(TestCase): + + def test_page_range(self): + objects = range(1000) + self.assertEqual(paginate(objects, 1).page_range, + [1, 2, 3, 4, '...', 100]) + self.assertEqual(paginate(objects, 2).page_range, + [1, 2, 3, 4, 5, '...', 100]) + self.assertEqual(paginate(objects, 3).page_range, + [1, 2, 3, 4, 5, 6, '...', 100]) + self.assertEqual(paginate(objects, 4).page_range, + [1, 2, 3, 4, 5, 6, 7, '...', 100]) + self.assertEqual(paginate(objects, 5).page_range, + [1, 2, 3, 4, 5, 6, 7, 8, '...', 100]) + self.assertEqual(paginate(objects, 6).page_range, + [1, 2, 3, 4, 5, 6, 7, 8, 9, '...', 100]) + self.assertEqual(paginate(objects, 7).page_range, + [1, '...', 4, 5, 6, 7, 8, 9, 10, '...', 100]) + self.assertEqual(paginate(objects, 8).page_range, + [1, '...', 5, 6, 7, 8, 9, 10, 11, '...', 100]) + self.assertEqual(paginate(objects, 9).page_range, + [1, '...', 6, 7, 8, 9, 10, 11, 12, '...', 100]) + self.assertEqual(paginate(objects, 10).page_range, + [1, '...', 7, 8, 9, 10, 11, 12, 13, '...', 100]) + self.assertEqual(paginate(objects, 40).page_range, + [1, '...', 37, 38, 39, 40, 41, 42, 43, '...', 100]) + self.assertEqual(paginate(objects, 90).page_range, + [1, '...', 87, 88, 89, 90, 91, 92, 93, '...', 100]) + self.assertEqual(paginate(objects, 91).page_range, + [1, '...', 88, 89, 90, 91, 92, 93, 94, '...', 100]) + self.assertEqual(paginate(objects, 92).page_range, + [1, '...', 89, 90, 91, 92, 93, 94, 95, '...', 100]) + self.assertEqual(paginate(objects, 93).page_range, + [1, '...', 90, 91, 92, 93, 94, 95, 96, '...', 100]) + self.assertEqual(paginate(objects, 94).page_range, + [1, '...', 91, 92, 93, 94, 95, 96, 97, '...', 100]) + self.assertEqual(paginate(objects, 95).page_range, + [1, '...', 92, 93, 94, 95, 96, 97, 98, 99, 100]) + self.assertEqual(paginate(objects, 96).page_range, + [1, '...', 93, 94, 95, 96, 97, 98, 99, 100]) + self.assertEqual(paginate(objects, 97).page_range, + [1, '...', 94, 95, 96, 97, 98, 99, 100]) + self.assertEqual(paginate(objects, 98).page_range, + [1, '...', 95, 96, 97, 98, 99, 100]) + self.assertEqual(paginate(objects, 99).page_range, + [1, '...', 96, 97, 98, 99, 100]) + self.assertEqual(paginate(objects, 100).page_range, + [1, '...', 97, 98, 99, 100]) |