Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 102 additions & 0 deletions tests/test_checks.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,110 @@
import os

from django.conf import settings
from django.core.checks import Warning, run_checks
from django.test import SimpleTestCase, override_settings

PATH_DOES_NOT_EXIST = os.path.join(settings.BASE_DIR, "tests", "invalid_static")


class ChecksTestCase(SimpleTestCase):
@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.middleware.gzip.GZipMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
]
)
def test_check_good_configuration(self):
messages = run_checks()
self.assertEqual(messages, [])

@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
]
)
def test_check_missing_middleware_error(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar.middleware.DebugToolbarMiddleware is "
"missing from MIDDLEWARE.",
hint="Add debug_toolbar.middleware.DebugToolbarMiddleware "
"to MIDDLEWARE.",
id="debug_toolbar.W001",
)
],
)

@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
"django.middleware.gzip.GZipMiddleware",
]
)
def test_check_gzip_middleware_error(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar.middleware.DebugToolbarMiddleware occurs "
"before django.middleware.gzip.GZipMiddleware in "
"MIDDLEWARE.",
hint="Move debug_toolbar.middleware.DebugToolbarMiddleware "
"to after django.middleware.gzip.GZipMiddleware in "
"MIDDLEWARE.",
id="debug_toolbar.W003",
)
],
)

@override_settings(
MIDDLEWARE_CLASSES=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.middleware.gzip.GZipMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
]
)
def test_check_middleware_classes_error(self):
messages = run_checks()
self.assertIn(
Warning(
"debug_toolbar is incompatible with MIDDLEWARE_CLASSES setting.",
hint="Use MIDDLEWARE instead of MIDDLEWARE_CLASSES",
id="debug_toolbar.W004",
),
messages,
)

@override_settings(
STATICFILES_DIRS=[PATH_DOES_NOT_EXIST],
)
def test_panel_check_errors(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar requires the STATICFILES_DIRS directories to exist.",
hint="Running manage.py collectstatic may help uncover the issue.",
id="debug_toolbar.staticfiles.W001",
)
],
)

@override_settings(DEBUG_TOOLBAR_PANELS=[])
def test_panels_is_empty(self):
errors = run_checks()
Expand Down
105 changes: 1 addition & 104 deletions tests/test_integration.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,12 @@
import unittest

import html5lib
from django.conf import settings
from django.contrib.staticfiles.testing import StaticLiveServerTestCase
from django.core import signing
from django.core.checks import Warning, run_checks
from django.db import connection
from django.http import HttpResponse
from django.template.loader import get_template
from django.test import RequestFactory, SimpleTestCase
from django.test import RequestFactory
from django.test.utils import override_settings

from debug_toolbar.middleware import DebugToolbarMiddleware, show_toolbar
Expand All @@ -28,7 +26,6 @@
webdriver = None


PATH_DOES_NOT_EXIST = os.path.join(settings.BASE_DIR, "tests", "invalid_static")
rf = RequestFactory()


Expand Down Expand Up @@ -441,103 +438,3 @@ def test_django_cached_template_loader(self):
"#djDebugWindow code"
)
)


@override_settings(DEBUG=True)
class DebugToolbarSystemChecksTestCase(SimpleTestCase):
@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.middleware.gzip.GZipMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
]
)
def test_check_good_configuration(self):
messages = run_checks()
self.assertEqual(messages, [])

@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
]
)
def test_check_missing_middleware_error(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar.middleware.DebugToolbarMiddleware is "
"missing from MIDDLEWARE.",
hint="Add debug_toolbar.middleware.DebugToolbarMiddleware "
"to MIDDLEWARE.",
id="debug_toolbar.W001",
)
],
)

@override_settings(
MIDDLEWARE=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
"django.middleware.gzip.GZipMiddleware",
]
)
def test_check_gzip_middleware_error(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar.middleware.DebugToolbarMiddleware occurs "
"before django.middleware.gzip.GZipMiddleware in "
"MIDDLEWARE.",
hint="Move debug_toolbar.middleware.DebugToolbarMiddleware "
"to after django.middleware.gzip.GZipMiddleware in "
"MIDDLEWARE.",
id="debug_toolbar.W003",
)
],
)

@override_settings(
MIDDLEWARE_CLASSES=[
"django.contrib.messages.middleware.MessageMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.middleware.gzip.GZipMiddleware",
"debug_toolbar.middleware.DebugToolbarMiddleware",
]
)
def test_check_middleware_classes_error(self):
messages = run_checks()
self.assertIn(
Warning(
"debug_toolbar is incompatible with MIDDLEWARE_CLASSES setting.",
hint="Use MIDDLEWARE instead of MIDDLEWARE_CLASSES",
id="debug_toolbar.W004",
),
messages,
)

@override_settings(
STATICFILES_DIRS=[PATH_DOES_NOT_EXIST],
)
def test_panel_check_errors(self):
messages = run_checks()
self.assertEqual(
messages,
[
Warning(
"debug_toolbar requires the STATICFILES_DIRS directories to exist.",
hint="Running manage.py collectstatic may help uncover the issue.",
id="debug_toolbar.staticfiles.W001",
)
],
)