Replace 'urls = ...' in test classes with override_settings('ROOT_URLCONF=...')

This commit is contained in:
Tom Christie 2016-06-01 12:19:14 +01:00
parent 1a2b3255ad
commit f11e24ecff
13 changed files with 39 additions and 74 deletions

View File

@ -1,16 +1,14 @@
from __future__ import unicode_literals
from django.contrib.auth.models import User
from django.test import TestCase
from django.test import override_settings, TestCase
from rest_framework.test import APIClient
@override_settings(ROOT_URLCONF='tests.browsable_api.auth_urls')
class DropdownWithAuthTests(TestCase):
"""Tests correct dropdown behaviour with Auth views enabled."""
urls = 'tests.browsable_api.auth_urls'
def setUp(self):
self.client = APIClient(enforce_csrf_checks=True)
self.username = 'john'
@ -40,11 +38,9 @@ class DropdownWithAuthTests(TestCase):
self.assertContains(response, '>Log in<')
@override_settings(ROOT_URLCONF='tests.browsable_api.no_auth_urls')
class NoDropdownWithoutAuthTests(TestCase):
"""Tests correct dropdown behaviour with Auth views NOT enabled."""
urls = 'tests.browsable_api.no_auth_urls'
def setUp(self):
self.client = APIClient(enforce_csrf_checks=True)
self.username = 'john'

View File

@ -8,7 +8,7 @@ from django.conf.urls import include, url
from django.contrib.auth.models import User
from django.db import models
from django.http import HttpResponse
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
from rest_framework import (
@ -81,10 +81,9 @@ urlpatterns = [
]
@override_settings(ROOT_URLCONF='tests.test_authentication')
class BasicAuthTests(TestCase):
"""Basic authentication"""
urls = 'tests.test_authentication'
def setUp(self):
self.csrf_client = APIClient(enforce_csrf_checks=True)
self.username = 'john'
@ -152,10 +151,9 @@ class BasicAuthTests(TestCase):
self.assertEqual(response['WWW-Authenticate'], 'Basic realm="api"')
@override_settings(ROOT_URLCONF='tests.test_authentication')
class SessionAuthTests(TestCase):
"""User session authentication"""
urls = 'tests.test_authentication'
def setUp(self):
self.csrf_client = APIClient(enforce_csrf_checks=True)
self.non_csrf_client = APIClient(enforce_csrf_checks=False)
@ -222,9 +220,9 @@ class SessionAuthTests(TestCase):
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
@override_settings(ROOT_URLCONF='tests.test_authentication')
class BaseTokenAuthTests(object):
"""Token authentication"""
urls = 'tests.test_authentication'
model = None
path = None
header_prefix = 'Token '

View File

@ -274,12 +274,11 @@ class IntegrationTestFiltering(CommonFilteringTestCase):
self.assertEqual(response.status_code, status.HTTP_200_OK)
@override_settings(ROOT_URLCONF='tests.test_filters')
class IntegrationTestDetailFiltering(CommonFilteringTestCase):
"""
Integration tests for filtered detail views.
"""
urls = 'tests.test_filters'
def _get_url(self, item):
return reverse('detail-view', kwargs=dict(pk=item.pk))

View File

@ -5,7 +5,7 @@ from django.conf.urls import url
from django.core.exceptions import PermissionDenied
from django.http import Http404
from django.template import Template, TemplateDoesNotExist
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
from rest_framework import status
@ -43,9 +43,8 @@ urlpatterns = [
]
@override_settings(ROOT_URLCONF='tests.test_htmlrenderer')
class TemplateHTMLRendererTests(TestCase):
urls = 'tests.test_htmlrenderer'
def setUp(self):
"""
Monkeypatch get_template
@ -89,9 +88,8 @@ class TemplateHTMLRendererTests(TestCase):
self.assertEqual(response['Content-Type'], 'text/html; charset=utf-8')
@override_settings(ROOT_URLCONF='tests.test_htmlrenderer')
class TemplateHTMLRendererExceptionTests(TestCase):
urls = 'tests.test_htmlrenderer'
def setUp(self):
"""
Monkeypatch get_template

View File

@ -1,6 +1,6 @@
from django.conf.urls import url
from django.contrib.auth.models import User
from django.test import override_settings
from rest_framework.authentication import TokenAuthentication
from rest_framework.authtoken.models import Token
@ -20,10 +20,8 @@ class MyMiddleware(object):
return response
@override_settings(ROOT_URLCONF='tests.test_middleware')
class TestMiddleware(APITestCase):
urls = 'tests.test_middleware'
def test_middleware_can_access_user_when_processing_response(self):
user = User.objects.create_user('john', 'john@example.com', 'password')
key = 'abcd1234'

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from django.conf.urls import url
from django.test import TestCase
from django.test import override_settings, TestCase
from rest_framework import serializers
from rest_framework.test import APIRequestFactory
@ -71,10 +71,8 @@ class NullableOneToOneTargetSerializer(serializers.HyperlinkedModelSerializer):
# TODO: Add test that .data cannot be accessed prior to .is_valid
@override_settings(ROOT_URLCONF='tests.test_relations_hyperlink')
class HyperlinkedManyToManyTests(TestCase):
urls = 'tests.test_relations_hyperlink'
def setUp(self):
for idx in range(1, 4):
target = ManyToManyTarget(name='target-%d' % idx)
@ -188,9 +186,8 @@ class HyperlinkedManyToManyTests(TestCase):
self.assertEqual(serializer.data, expected)
@override_settings(ROOT_URLCONF='tests.test_relations_hyperlink')
class HyperlinkedForeignKeyTests(TestCase):
urls = 'tests.test_relations_hyperlink'
def setUp(self):
target = ForeignKeyTarget(name='target-1')
target.save()
@ -318,9 +315,8 @@ class HyperlinkedForeignKeyTests(TestCase):
self.assertEqual(serializer.errors, {'target': ['This field may not be null.']})
@override_settings(ROOT_URLCONF='tests.test_relations_hyperlink')
class HyperlinkedNullableForeignKeyTests(TestCase):
urls = 'tests.test_relations_hyperlink'
def setUp(self):
target = ForeignKeyTarget(name='target-1')
target.save()
@ -425,9 +421,8 @@ class HyperlinkedNullableForeignKeyTests(TestCase):
self.assertEqual(serializer.data, expected)
@override_settings(ROOT_URLCONF='tests.test_relations_hyperlink')
class HyperlinkedNullableOneToOneTests(TestCase):
urls = 'tests.test_relations_hyperlink'
def setUp(self):
target = OneToOneTarget(name='target-1')
target.save()

View File

@ -8,7 +8,7 @@ from collections import MutableMapping, OrderedDict
from django.conf.urls import include, url
from django.core.cache import cache
from django.db import models
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
from django.utils.safestring import SafeText
from django.utils.translation import ugettext_lazy as _
@ -148,13 +148,11 @@ class DocumentingRendererTests(TestCase):
self.assertContains(response, '>PATCH<')
@override_settings(ROOT_URLCONF='tests.test_renderers')
class RendererEndToEndTests(TestCase):
"""
End-to-end testing of renderers using an RendererMixin on a generic view.
"""
urls = 'tests.test_renderers'
def test_default_renderer_serializes_content(self):
"""If the Accept header is not set the default renderer should serialize the response."""
resp = self.client.get('/')
@ -397,13 +395,11 @@ class AsciiJSONRendererTests(TestCase):
# Tests for caching issue, #346
@override_settings(ROOT_URLCONF='tests.test_renderers')
class CacheRenderTest(TestCase):
"""
Tests specific to caching responses
"""
urls = 'tests.test_renderers'
def test_head_caching(self):
"""
Test caching of HEAD requests

View File

@ -7,7 +7,7 @@ from django.conf.urls import url
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.models import User
from django.contrib.sessions.middleware import SessionMiddleware
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
from rest_framework import status
@ -113,9 +113,8 @@ urlpatterns = [
]
@override_settings(ROOT_URLCONF='tests.test_request')
class TestContentParsingWithAuthentication(TestCase):
urls = 'tests.test_request'
def setUp(self):
self.csrf_client = APIClient(enforce_csrf_checks=True)
self.username = 'john'

View File

@ -1,7 +1,7 @@
from __future__ import unicode_literals
from django.conf.urls import include, url
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
from rest_framework import generics, routers, serializers, status, viewsets
@ -131,13 +131,11 @@ urlpatterns = [
# TODO: Clean tests bellow - remove duplicates with above, better unit testing, ...
@override_settings(ROOT_URLCONF='tests.test_response')
class RendererIntegrationTests(TestCase):
"""
End-to-end testing of renderers using an ResponseMixin on a generic view.
"""
urls = 'tests.test_response'
def test_default_renderer_serializes_content(self):
"""If the Accept header is not set the default renderer should serialize the response."""
resp = self.client.get('/')
@ -201,9 +199,8 @@ class RendererIntegrationTests(TestCase):
self.assertEqual(resp.status_code, DUMMYSTATUS)
@override_settings(ROOT_URLCONF='tests.test_response')
class UnsupportedMediaTypeTests(TestCase):
urls = 'tests.test_response'
def test_should_allow_posting_json(self):
response = self.client.post('/json', data='{"test": 123}', content_type='application/json')
@ -220,12 +217,11 @@ class UnsupportedMediaTypeTests(TestCase):
self.assertEqual(response.status_code, 415)
@override_settings(ROOT_URLCONF='tests.test_response')
class Issue122Tests(TestCase):
"""
Tests that covers #122.
"""
urls = 'tests.test_response'
def test_only_html_renderer(self):
"""
Test if no infinite recursion occurs.
@ -239,13 +235,11 @@ class Issue122Tests(TestCase):
self.client.get('/html1')
@override_settings(ROOT_URLCONF='tests.test_response')
class Issue467Tests(TestCase):
"""
Tests for #467
"""
urls = 'tests.test_response'
def test_form_has_label_and_help_text(self):
resp = self.client.get('/html_new_model')
self.assertEqual(resp['Content-Type'], 'text/html; charset=utf-8')
@ -253,13 +247,11 @@ class Issue467Tests(TestCase):
# self.assertContains(resp, 'Text description.')
@override_settings(ROOT_URLCONF='tests.test_response')
class Issue807Tests(TestCase):
"""
Covers #807
"""
urls = 'tests.test_response'
def test_does_not_append_charset_by_default(self):
"""
Renderers don't include a charset unless set explicitly.

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.conf.urls import url
from django.core.urlresolvers import NoReverseMatch
from django.test import TestCase
from django.test import override_settings, TestCase
from rest_framework.reverse import reverse
from rest_framework.test import APIRequestFactory
@ -30,12 +30,11 @@ class MockVersioningScheme(object):
return 'http://scheme-reversed/view'
@override_settings(ROOT_URLCONF='tests.test_reverse')
class ReverseTests(TestCase):
"""
Tests for fully qualified URLs when using `reverse`.
"""
urls = 'tests.test_reverse'
def test_reversed_urls_are_fully_qualified(self):
request = factory.get('/view')
url = reverse('view', request=request)

View File

@ -5,7 +5,7 @@ from collections import namedtuple
from django.conf.urls import include, url
from django.core.exceptions import ImproperlyConfigured
from django.db import models
from django.test import TestCase
from django.test import override_settings, TestCase
from rest_framework import permissions, serializers, viewsets
from rest_framework.decorators import detail_route, list_route
@ -113,9 +113,8 @@ class TestSimpleRouter(TestCase):
self.assertEqual(route.mapping[method], endpoint)
@override_settings(ROOT_URLCONF='tests.test_routers')
class TestRootView(TestCase):
urls = 'tests.test_routers'
def test_retrieve_namespaced_root(self):
response = self.client.get('/namespaced/')
self.assertEqual(
@ -135,12 +134,11 @@ class TestRootView(TestCase):
)
@override_settings(ROOT_URLCONF='tests.test_routers')
class TestCustomLookupFields(TestCase):
"""
Ensure that custom lookup fields are correctly routed.
"""
urls = 'tests.test_routers'
def setUp(self):
RouterTestModel.objects.create(uuid='123', text='foo bar')
@ -191,14 +189,13 @@ class TestLookupValueRegex(TestCase):
self.assertEqual(expected[idx], self.urls[idx].regex.pattern)
@override_settings(ROOT_URLCONF='tests.test_routers')
class TestLookupUrlKwargs(TestCase):
"""
Ensure the router honors lookup_url_kwarg.
Setup a deep lookup_field, but map it to a simple URL kwarg.
"""
urls = 'tests.test_routers'
def setUp(self):
RouterTestModel.objects.create(uuid='123', text='foo bar')

View File

@ -6,7 +6,7 @@ from io import BytesIO
from django.conf.urls import url
from django.contrib.auth.models import User
from django.shortcuts import redirect
from django.test import TestCase
from django.test import override_settings, TestCase
from rest_framework.decorators import api_view
from rest_framework.response import Response
@ -44,9 +44,8 @@ urlpatterns = [
]
@override_settings(ROOT_URLCONF='tests.test_testing')
class TestAPITestClient(TestCase):
urls = 'tests.test_testing'
def setUp(self):
self.client = APIClient()

View File

@ -2,7 +2,7 @@ from __future__ import unicode_literals
from django.conf.urls import url
from django.core.exceptions import ImproperlyConfigured
from django.test import TestCase
from django.test import override_settings, TestCase
from django.utils import six
import rest_framework.utils.model_meta
@ -47,12 +47,11 @@ urlpatterns = [
]
@override_settings(ROOT_URLCONF='tests.test_utils')
class BreadcrumbTests(TestCase):
"""
Tests the breadcrumb functionality used by the HTML renderer.
"""
urls = 'tests.test_utils'
def test_root_breadcrumbs(self):
url = '/'
self.assertEqual(