mirror of
https://github.com/django/django.git
synced 2024-12-22 17:16:24 +00:00
Added tests for logging of Http404 warnings.
This commit is contained in:
parent
86880ab89b
commit
5e00b14403
@ -66,19 +66,22 @@ class LoggingFiltersTest(SimpleTestCase):
|
||||
self.assertEqual(filter_.filter("record is not used"), False)
|
||||
|
||||
|
||||
class DefaultLoggingTest(LoggingCaptureMixin, SimpleTestCase):
|
||||
class SetupDefaultLoggingMixin(object):
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super(DefaultLoggingTest, cls).setUpClass()
|
||||
super(SetupDefaultLoggingMixin, cls).setUpClass()
|
||||
cls._logging = settings.LOGGING
|
||||
logging.config.dictConfig(DEFAULT_LOGGING)
|
||||
|
||||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
super(DefaultLoggingTest, cls).tearDownClass()
|
||||
super(SetupDefaultLoggingMixin, cls).tearDownClass()
|
||||
logging.config.dictConfig(cls._logging)
|
||||
|
||||
|
||||
class DefaultLoggingTests(SetupDefaultLoggingMixin, LoggingCaptureMixin, SimpleTestCase):
|
||||
|
||||
def test_django_logger(self):
|
||||
"""
|
||||
The 'django' base logger only output anything when DEBUG=True.
|
||||
@ -106,6 +109,36 @@ class DefaultLoggingTest(LoggingCaptureMixin, SimpleTestCase):
|
||||
self.assertEqual(self.logger_output.getvalue(), '')
|
||||
|
||||
|
||||
@override_settings(DEBUG=True, ROOT_URLCONF='logging_tests.urls')
|
||||
class HandlerLoggingTests(SetupDefaultLoggingMixin, LoggingCaptureMixin, SimpleTestCase):
|
||||
|
||||
def test_page_found_no_warning(self):
|
||||
self.client.get('/innocent/')
|
||||
self.assertEqual(self.logger_output.getvalue(), '')
|
||||
|
||||
def test_page_not_found_warning(self):
|
||||
self.client.get('/does_not_exist/')
|
||||
self.assertEqual(self.logger_output.getvalue(), 'Not Found: /does_not_exist/\n')
|
||||
|
||||
|
||||
@override_settings(
|
||||
DEBUG=True,
|
||||
USE_I18N=True,
|
||||
LANGUAGES=[('en', 'English')],
|
||||
MIDDLEWARE_CLASSES=[
|
||||
'django.middleware.locale.LocaleMiddleware',
|
||||
'django.middleware.common.CommonMiddleware',
|
||||
],
|
||||
ROOT_URLCONF='logging_tests.urls_i18n',
|
||||
)
|
||||
class I18nLoggingTests(SetupDefaultLoggingMixin, LoggingCaptureMixin, SimpleTestCase):
|
||||
|
||||
def test_i18n_page_not_found_warning(self):
|
||||
self.client.get('/this_does_not/')
|
||||
self.client.get('/en/nor_this/')
|
||||
self.assertEqual(self.logger_output.getvalue(), 'Not Found: /this_does_not/\nNot Found: /en/nor_this/\n')
|
||||
|
||||
|
||||
class WarningLoggerTests(SimpleTestCase):
|
||||
"""
|
||||
Tests that warnings output for RemovedInDjangoXXWarning (XX being the next
|
||||
|
@ -5,6 +5,7 @@ from django.conf.urls import url
|
||||
from . import views
|
||||
|
||||
urlpatterns = [
|
||||
url(r'^innocent/$', views.innocent),
|
||||
url(r'^suspicious/$', views.suspicious),
|
||||
url(r'^suspicious_spec/$', views.suspicious_spec),
|
||||
]
|
||||
|
9
tests/logging_tests/urls_i18n.py
Normal file
9
tests/logging_tests/urls_i18n.py
Normal file
@ -0,0 +1,9 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf.urls import url
|
||||
from django.conf.urls.i18n import i18n_patterns
|
||||
from django.http import HttpResponse
|
||||
|
||||
urlpatterns = i18n_patterns(
|
||||
url(r'^exists/$', lambda r: HttpResponse()),
|
||||
)
|
@ -1,6 +1,11 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.exceptions import DisallowedHost, SuspiciousOperation
|
||||
from django.http import HttpResponse
|
||||
|
||||
|
||||
def innocent(request):
|
||||
return HttpResponse('innocent')
|
||||
|
||||
|
||||
def suspicious(request):
|
||||
|
Loading…
Reference in New Issue
Block a user