summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell Keith-Magee <russell@keith-magee.com>2010-08-06 14:39:24 +0000
committerRussell Keith-Magee <russell@keith-magee.com>2010-08-06 14:39:24 +0000
commit8419b092aeb9c28c3fe117c04c5d7d537aadaef2 (patch)
tree2f4473b7bb1179aaba638893f67f1e9a205e57d3
parent5bd352a96669a921541188685f5184d81a712dfe (diff)
[1.2.X] Fixed #14027 -- Ensure that reverse() raises an exception when you try to reverse None. Thanks to Alex for the report and patch.
Backport of r13499 from trunk. git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@13500 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/core/urlresolvers.py3
-rw-r--r--tests/regressiontests/urlpatterns_reverse/tests.py4
2 files changed, 6 insertions, 1 deletions
diff --git a/django/core/urlresolvers.py b/django/core/urlresolvers.py
index cad57a5d9f..8ecec941fc 100644
--- a/django/core/urlresolvers.py
+++ b/django/core/urlresolvers.py
@@ -183,7 +183,8 @@ class RegexURLResolver(object):
else:
bits = normalize(p_pattern)
lookups.appendlist(pattern.callback, (bits, p_pattern))
- lookups.appendlist(pattern.name, (bits, p_pattern))
+ if pattern.name is not None:
+ lookups.appendlist(pattern.name, (bits, p_pattern))
self._reverse_dict = lookups
self._namespace_dict = namespaces
self._app_dict = apps
diff --git a/tests/regressiontests/urlpatterns_reverse/tests.py b/tests/regressiontests/urlpatterns_reverse/tests.py
index 3fcc935da2..eed7c65dd7 100644
--- a/tests/regressiontests/urlpatterns_reverse/tests.py
+++ b/tests/regressiontests/urlpatterns_reverse/tests.py
@@ -119,6 +119,10 @@ class URLPatternReverse(TestCase):
else:
self.assertEquals(got, expected)
+ def test_reverse_none(self):
+ # Reversing None should raise an error, not return the last un-named view.
+ self.assertRaises(NoReverseMatch, reverse, None)
+
class ResolverTests(unittest.TestCase):
def test_non_regex(self):
"""