summaryrefslogtreecommitdiff
path: root/tests/urlpatterns_reverse
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2016-06-28 11:21:26 -0400
committerGitHub <noreply@github.com>2016-06-28 11:21:26 -0400
commitc9ae09addffb839403312131d4251e9d8b454508 (patch)
tree74913fbe2e90d88e094f8594947ebf313ec5f12f /tests/urlpatterns_reverse
parentc1b6f554e405fe733e8d80f7e3d77c277810e707 (diff)
Replaced use of TestCase.fail() with assertRaises().
Also removed try/except/fail antipattern that hides exceptions.
Diffstat (limited to 'tests/urlpatterns_reverse')
-rw-r--r--tests/urlpatterns_reverse/tests.py78
1 files changed, 30 insertions, 48 deletions
diff --git a/tests/urlpatterns_reverse/tests.py b/tests/urlpatterns_reverse/tests.py
index bce4237b03..560e5e10ab 100644
--- a/tests/urlpatterns_reverse/tests.py
+++ b/tests/urlpatterns_reverse/tests.py
@@ -5,7 +5,6 @@ Unit tests for reverse URL lookups.
from __future__ import unicode_literals
import sys
-import unittest
from admin_scripts.tests import AdminScriptTestCase
@@ -313,16 +312,9 @@ class URLPatternReverse(SimpleTestCase):
def test_patterns_reported(self):
# Regression for #17076
- try:
+ with self.assertRaisesMessage(NoReverseMatch, r"1 pattern(s) tried: ['people/(?P<name>\\w+)/$']"):
# this url exists, but requires an argument
reverse("people", args=[])
- except NoReverseMatch as e:
- pattern_description = r"1 pattern(s) tried: ['people/(?P<name>\\w+)/$']"
- self.assertIn(pattern_description, str(e))
- else:
- # we can't use .assertRaises, since we want to inspect the
- # exception
- self.fail("Expected a NoReverseMatch, but none occurred.")
@override_script_prefix('/script:name/')
def test_script_name_escaping(self):
@@ -339,7 +331,7 @@ class URLPatternReverse(SimpleTestCase):
)
-class ResolverTests(unittest.TestCase):
+class ResolverTests(SimpleTestCase):
@ignore_warnings(category=RemovedInDjango20Warning)
def test_resolver_repr(self):
"""
@@ -359,10 +351,7 @@ class ResolverTests(unittest.TestCase):
urls = 'urlpatterns_reverse.named_urls'
proxy_url = reverse_lazy('named-url1', urlconf=urls)
resolver = get_resolver(urls)
- try:
- resolver.resolve(proxy_url)
- except TypeError:
- self.fail('Failed to coerce lazy object to text')
+ resolver.resolve(proxy_url)
def test_resolver_reverse(self):
resolver = get_resolver('urlpatterns_reverse.named_urls')
@@ -407,32 +396,31 @@ class ResolverTests(unittest.TestCase):
[{'type': RegexURLResolver}, {'type': RegexURLPattern, 'name': None}],
[{'type': RegexURLResolver}, {'type': RegexURLResolver}],
]
- try:
+ with self.assertRaisesMessage(Resolver404, "tried") as cm:
resolve('/included/non-existent-url', urlconf=urls)
- self.fail('resolve did not raise a 404')
- except Resolver404 as e:
- # make sure we at least matched the root ('/') url resolver:
- self.assertIn('tried', e.args[0])
- tried = e.args[0]['tried']
- self.assertEqual(
- len(e.args[0]['tried']),
- len(url_types_names),
- 'Wrong number of tried URLs returned. Expected %s, got %s.' % (
- len(url_types_names), len(e.args[0]['tried'])
- )
+ e = cm.exception
+ # make sure we at least matched the root ('/') url resolver:
+ self.assertIn('tried', e.args[0])
+ tried = e.args[0]['tried']
+ self.assertEqual(
+ len(e.args[0]['tried']),
+ len(url_types_names),
+ 'Wrong number of tried URLs returned. Expected %s, got %s.' % (
+ len(url_types_names), len(e.args[0]['tried'])
)
- for tried, expected in zip(e.args[0]['tried'], url_types_names):
- for t, e in zip(tried, expected):
- self.assertIsInstance(t, e['type']), str('%s is not an instance of %s') % (t, e['type'])
- if 'name' in e:
- if not e['name']:
- self.assertIsNone(t.name, 'Expected no URL name but found %s.' % t.name)
- else:
- self.assertEqual(
- t.name,
- e['name'],
- 'Wrong URL name. Expected "%s", got "%s".' % (e['name'], t.name)
- )
+ )
+ for tried, expected in zip(e.args[0]['tried'], url_types_names):
+ for t, e in zip(tried, expected):
+ self.assertIsInstance(t, e['type']), str('%s is not an instance of %s') % (t, e['type'])
+ if 'name' in e:
+ if not e['name']:
+ self.assertIsNone(t.name, 'Expected no URL name but found %s.' % t.name)
+ else:
+ self.assertEqual(
+ t.name,
+ e['name'],
+ 'Wrong URL name. Expected "%s", got "%s".' % (e['name'], t.name)
+ )
def test_namespaced_view_detail(self):
resolver = get_resolver('urlpatterns_reverse.nested_urls')
@@ -918,17 +906,11 @@ class DefaultErrorHandlerTests(SimpleTestCase):
def test_default_handler(self):
"If the urls.py doesn't specify handlers, the defaults are used"
- try:
- response = self.client.get('/test/')
- self.assertEqual(response.status_code, 404)
- except AttributeError:
- self.fail("Shouldn't get an AttributeError due to undefined 404 handler")
+ response = self.client.get('/test/')
+ self.assertEqual(response.status_code, 404)
- try:
- with self.assertRaises(ValueError):
- self.client.get('/bad_view/')
- except AttributeError:
- self.fail("Shouldn't get an AttributeError due to undefined 500 handler")
+ with self.assertRaisesMessage(ValueError, "I don't think I'm getting good"):
+ self.client.get('/bad_view/')
@override_settings(ROOT_URLCONF=None)