From b4cdf4d111e2a536abddeb38d029e71bb0d41ddb Mon Sep 17 00:00:00 2001 From: Jannis Leidel Date: Thu, 16 Jun 2011 16:41:14 +0000 Subject: Fixed #10802 -- Handle ImportErrors and AttributeErrors gracefully when raised by the URL resolver system during startup. Many thanks, IonelMaries and Bas Peschier. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16420 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- tests/regressiontests/urlpatterns_reverse/tests.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'tests/regressiontests/urlpatterns_reverse/tests.py') diff --git a/tests/regressiontests/urlpatterns_reverse/tests.py b/tests/regressiontests/urlpatterns_reverse/tests.py index 31a928caa2..f447adf4cc 100644 --- a/tests/regressiontests/urlpatterns_reverse/tests.py +++ b/tests/regressiontests/urlpatterns_reverse/tests.py @@ -2,7 +2,7 @@ Unit tests for reverse URL lookups. """ from django.conf import settings -from django.core.exceptions import ImproperlyConfigured +from django.core.exceptions import ImproperlyConfigured, ViewDoesNotExist from django.core.urlresolvers import reverse, resolve, NoReverseMatch,\ Resolver404, ResolverMatch,\ RegexURLResolver, RegexURLPattern @@ -470,3 +470,14 @@ class ResolverMatchTests(TestCase): self.assertEqual(match[0], func) self.assertEqual(match[1], args) self.assertEqual(match[2], kwargs) + +class ErroneousViewTests(TestCase): + urls = 'regressiontests.urlpatterns_reverse.erroneous_urls' + + def test_erroneous_resolve(self): + self.assertRaises(ImportError, self.client.get, '/erroneous_inner/') + self.assertRaises(ImportError, self.client.get, '/erroneous_outer/') + self.assertRaises(ViewDoesNotExist, self.client.get, '/missing_inner/') + self.assertRaises(ViewDoesNotExist, self.client.get, '/missing_outer/') + self.assertRaises(ViewDoesNotExist, self.client.get, '/uncallable/') + -- cgit v1.3