Added support for multiple paginations on the same template. (Florian Schlachter )
[django-pagination.git] / pagination / tests.py
index 31b3301..454e19d 100644 (file)
@@ -4,22 +4,8 @@
 >>> from django.template import Template, Context
 
 >>> p = Paginator(range(15), 2)
->>> pg = paginate({'paginator': p, 'page_obj': p.page(1)})
->>> pg['pages']
-[1, 2, 3, 4, 5, 6, 7, 8]
->>> pg['records']['first']
-1
->>> pg['records']['last']
-2
-
->>> p = Paginator(range(15), 2)
->>> pg = paginate({'paginator': p, 'page_obj': p.page(8)})
->>> pg['pages']
+>>> paginate({'paginator': p, 'page_obj': p.page(1)})['pages']
 [1, 2, 3, 4, 5, 6, 7, 8]
->>> pg['records']['first']
-15
->>> pg['records']['last']
-15
 
 >>> p = Paginator(range(17), 2)
 >>> paginate({'paginator': p, 'page_obj': p.page(1)})['pages']
 [1, 2]
 
 >>> p = Paginator(range(21), 2, 1)
->>> pg = paginate({'paginator': p, 'page_obj': p.page(1)})
->>> pg['pages']
+>>> paginate({'paginator': p, 'page_obj': p.page(1)})['pages']
 [1, 2, 3, 4, None, 7, 8, 9, 10]
->>> pg['records']['first']
-1
->>> pg['records']['last']
-2
 
 >>> p = Paginator(range(21), 2, 1)
->>> pg = paginate({'paginator': p, 'page_obj': p.page(10)})
->>> pg['pages']
-[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
->>> pg['records']['first']
-19
->>> pg['records']['last']
-21
+>>> paginate({'paginator': p, 'page_obj': p.page(1)})['pages']
+[1, 2, 3, 4, None, 7, 8, 9, 10]
 
 >>> t = Template("{% load pagination_tags %}{% autopaginate var 2 %}{% paginate %}")
 
 >>> from django.http import HttpRequest as DjangoHttpRequest
 >>> class HttpRequest(DjangoHttpRequest):
-...     page = 1
+...     page = lambda self, suffix: 1
 
 >>> t.render(Context({'var': range(21), 'request': HttpRequest()}))
 u'\\n\\n<div class="pagination">...
@@ -73,11 +49,15 @@ u'\\n\\n<div class="pagination">...
 u'\\n\\n<div class="pagination">...
 >>> t = Template("{% load pagination_tags %}{% autopaginate var by %}{% paginate %}")
 >>> t.render(Context({'var': range(21), 'by': 20, 'request': HttpRequest()}))
-u'\\n\\n<div class="pagination">...
+u'\\n\\n<div class="pagination">...<a href="?page=2"...
 >>> t = Template("{% load pagination_tags %}{% autopaginate var by as foo %}{{ foo }}")
 >>> t.render(Context({'var': range(21), 'by': 20, 'request': HttpRequest()}))
 u'[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]'
 >>>
+>>> t = Template("{% load pagination_tags %}{% autopaginate var2 by as foo2 %}{% paginate %}{% autopaginate var by as foo %}{% paginate %}")
+>>> t.render(Context({'var': range(21), 'var2': range(50, 121), 'by': 20, 'request': HttpRequest()}))
+u'\\n\\n<div class="pagination">...<a href="?page_var2=2"...<a href="?page_var=2"...
+>>>
 
 # Testing InfinitePaginator
 
@@ -155,4 +135,4 @@ True
 >>> request = WSGIRequest({'REQUEST_METHOD': 'POST', 'CONTENT_TYPE': 'multipart', 'wsgi.input': StringIO()})
 >>> middleware.process_request(request)
 >>> request.upload_handlers.append('asdf')
-"""
+"""
\ No newline at end of file