diff options
| author | Russell Keith-Magee <russell@keith-magee.com> | 2010-08-06 14:39:24 +0000 |
|---|---|---|
| committer | Russell Keith-Magee <russell@keith-magee.com> | 2010-08-06 14:39:24 +0000 |
| commit | 8419b092aeb9c28c3fe117c04c5d7d537aadaef2 (patch) | |
| tree | 2f4473b7bb1179aaba638893f67f1e9a205e57d3 | |
| parent | 5bd352a96669a921541188685f5184d81a712dfe (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.py | 3 | ||||
| -rw-r--r-- | tests/regressiontests/urlpatterns_reverse/tests.py | 4 |
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): """ |
