diff options
| author | Tim Graham <timograham@gmail.com> | 2016-06-28 11:21:26 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-06-28 11:21:26 -0400 |
| commit | c9ae09addffb839403312131d4251e9d8b454508 (patch) | |
| tree | 74913fbe2e90d88e094f8594947ebf313ec5f12f /tests/urlpatterns_reverse | |
| parent | c1b6f554e405fe733e8d80f7e3d77c277810e707 (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.py | 78 |
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) |
