From 5a00a57aa591c766f5ee1d8c59b64618d74fe191 Mon Sep 17 00:00:00 2001 From: Preston Holmes Date: Sun, 4 Nov 2012 15:46:30 -0800 Subject: Fixed #19240 -- include pagination error details in ListView 404 Thanks to seawolf for the patch --- tests/regressiontests/generic_views/list.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/regressiontests/generic_views/list.py b/tests/regressiontests/generic_views/list.py index 14dc1d725d..6c73138043 100644 --- a/tests/regressiontests/generic_views/list.py +++ b/tests/regressiontests/generic_views/list.py @@ -2,6 +2,7 @@ from __future__ import absolute_import from django.core.exceptions import ImproperlyConfigured from django.test import TestCase +from django.test.utils import override_settings from django.views.generic.base import View from .models import Author, Artist @@ -171,8 +172,17 @@ class ListViewTests(TestCase): with self.assertNumQueries(3): self.client.get('/list/authors/notempty/paginated/') + @override_settings(DEBUG=True) + def test_paginated_list_view_returns_useful_message_on_invalid_page(self): + # test for #19240 + # tests that source exception's message is included in page + self._make_authors(1) + res = self.client.get('/list/authors/paginated/2/') + self.assertEqual(res.status_code, 404) + self.assertEqual(res.context.get('reason'), + "Invalid page (2): That page contains no results") + def _make_authors(self, n): Author.objects.all().delete() for i in range(n): Author.objects.create(name='Author %02i' % i, slug='a%s' % i) - -- cgit v1.3