Skip to content

Commit ad6d819

Browse files
committed
Merge remote-tracking branch 'jdufresne/test-checks'
* jdufresne/test-checks: Combine DebugToolbarSystemChecksTestCase with ChecksTestCase
2 parents e78fd87 + cc4aaee commit ad6d819

File tree

2 files changed

+103
-104
lines changed

2 files changed

+103
-104
lines changed

tests/test_checks.py

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,110 @@
1+
import os
2+
3+
from django.conf import settings
14
from django.core.checks import Warning, run_checks
25
from django.test import SimpleTestCase, override_settings
36

7+
PATH_DOES_NOT_EXIST = os.path.join(settings.BASE_DIR, "tests", "invalid_static")
8+
49

510
class ChecksTestCase(SimpleTestCase):
11+
@override_settings(
12+
MIDDLEWARE=[
13+
"django.contrib.messages.middleware.MessageMiddleware",
14+
"django.contrib.sessions.middleware.SessionMiddleware",
15+
"django.contrib.auth.middleware.AuthenticationMiddleware",
16+
"django.middleware.gzip.GZipMiddleware",
17+
"debug_toolbar.middleware.DebugToolbarMiddleware",
18+
]
19+
)
20+
def test_check_good_configuration(self):
21+
messages = run_checks()
22+
self.assertEqual(messages, [])
23+
24+
@override_settings(
25+
MIDDLEWARE=[
26+
"django.contrib.messages.middleware.MessageMiddleware",
27+
"django.contrib.sessions.middleware.SessionMiddleware",
28+
"django.contrib.auth.middleware.AuthenticationMiddleware",
29+
]
30+
)
31+
def test_check_missing_middleware_error(self):
32+
messages = run_checks()
33+
self.assertEqual(
34+
messages,
35+
[
36+
Warning(
37+
"debug_toolbar.middleware.DebugToolbarMiddleware is "
38+
"missing from MIDDLEWARE.",
39+
hint="Add debug_toolbar.middleware.DebugToolbarMiddleware "
40+
"to MIDDLEWARE.",
41+
id="debug_toolbar.W001",
42+
)
43+
],
44+
)
45+
46+
@override_settings(
47+
MIDDLEWARE=[
48+
"django.contrib.messages.middleware.MessageMiddleware",
49+
"django.contrib.sessions.middleware.SessionMiddleware",
50+
"django.contrib.auth.middleware.AuthenticationMiddleware",
51+
"debug_toolbar.middleware.DebugToolbarMiddleware",
52+
"django.middleware.gzip.GZipMiddleware",
53+
]
54+
)
55+
def test_check_gzip_middleware_error(self):
56+
messages = run_checks()
57+
self.assertEqual(
58+
messages,
59+
[
60+
Warning(
61+
"debug_toolbar.middleware.DebugToolbarMiddleware occurs "
62+
"before django.middleware.gzip.GZipMiddleware in "
63+
"MIDDLEWARE.",
64+
hint="Move debug_toolbar.middleware.DebugToolbarMiddleware "
65+
"to after django.middleware.gzip.GZipMiddleware in "
66+
"MIDDLEWARE.",
67+
id="debug_toolbar.W003",
68+
)
69+
],
70+
)
71+
72+
@override_settings(
73+
MIDDLEWARE_CLASSES=[
74+
"django.contrib.messages.middleware.MessageMiddleware",
75+
"django.contrib.sessions.middleware.SessionMiddleware",
76+
"django.contrib.auth.middleware.AuthenticationMiddleware",
77+
"django.middleware.gzip.GZipMiddleware",
78+
"debug_toolbar.middleware.DebugToolbarMiddleware",
79+
]
80+
)
81+
def test_check_middleware_classes_error(self):
82+
messages = run_checks()
83+
self.assertIn(
84+
Warning(
85+
"debug_toolbar is incompatible with MIDDLEWARE_CLASSES setting.",
86+
hint="Use MIDDLEWARE instead of MIDDLEWARE_CLASSES",
87+
id="debug_toolbar.W004",
88+
),
89+
messages,
90+
)
91+
92+
@override_settings(
93+
STATICFILES_DIRS=[PATH_DOES_NOT_EXIST],
94+
)
95+
def test_panel_check_errors(self):
96+
messages = run_checks()
97+
self.assertEqual(
98+
messages,
99+
[
100+
Warning(
101+
"debug_toolbar requires the STATICFILES_DIRS directories to exist.",
102+
hint="Running manage.py collectstatic may help uncover the issue.",
103+
id="debug_toolbar.staticfiles.W001",
104+
)
105+
],
106+
)
107+
6108
@override_settings(DEBUG_TOOLBAR_PANELS=[])
7109
def test_panels_is_empty(self):
8110
errors = run_checks()

tests/test_integration.py

Lines changed: 1 addition & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@
33
import unittest
44

55
import html5lib
6-
from django.conf import settings
76
from django.contrib.staticfiles.testing import StaticLiveServerTestCase
87
from django.core import signing
9-
from django.core.checks import Warning, run_checks
108
from django.db import connection
119
from django.http import HttpResponse
1210
from django.template.loader import get_template
13-
from django.test import RequestFactory, SimpleTestCase
11+
from django.test import RequestFactory
1412
from django.test.utils import override_settings
1513

1614
from debug_toolbar.middleware import DebugToolbarMiddleware, show_toolbar
@@ -28,7 +26,6 @@
2826
webdriver = None
2927

3028

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

3431

@@ -441,103 +438,3 @@ def test_django_cached_template_loader(self):
441438
"#djDebugWindow code"
442439
)
443440
)
444-
445-
446-
@override_settings(DEBUG=True)
447-
class DebugToolbarSystemChecksTestCase(SimpleTestCase):
448-
@override_settings(
449-
MIDDLEWARE=[
450-
"django.contrib.messages.middleware.MessageMiddleware",
451-
"django.contrib.sessions.middleware.SessionMiddleware",
452-
"django.contrib.auth.middleware.AuthenticationMiddleware",
453-
"django.middleware.gzip.GZipMiddleware",
454-
"debug_toolbar.middleware.DebugToolbarMiddleware",
455-
]
456-
)
457-
def test_check_good_configuration(self):
458-
messages = run_checks()
459-
self.assertEqual(messages, [])
460-
461-
@override_settings(
462-
MIDDLEWARE=[
463-
"django.contrib.messages.middleware.MessageMiddleware",
464-
"django.contrib.sessions.middleware.SessionMiddleware",
465-
"django.contrib.auth.middleware.AuthenticationMiddleware",
466-
]
467-
)
468-
def test_check_missing_middleware_error(self):
469-
messages = run_checks()
470-
self.assertEqual(
471-
messages,
472-
[
473-
Warning(
474-
"debug_toolbar.middleware.DebugToolbarMiddleware is "
475-
"missing from MIDDLEWARE.",
476-
hint="Add debug_toolbar.middleware.DebugToolbarMiddleware "
477-
"to MIDDLEWARE.",
478-
id="debug_toolbar.W001",
479-
)
480-
],
481-
)
482-
483-
@override_settings(
484-
MIDDLEWARE=[
485-
"django.contrib.messages.middleware.MessageMiddleware",
486-
"django.contrib.sessions.middleware.SessionMiddleware",
487-
"django.contrib.auth.middleware.AuthenticationMiddleware",
488-
"debug_toolbar.middleware.DebugToolbarMiddleware",
489-
"django.middleware.gzip.GZipMiddleware",
490-
]
491-
)
492-
def test_check_gzip_middleware_error(self):
493-
messages = run_checks()
494-
self.assertEqual(
495-
messages,
496-
[
497-
Warning(
498-
"debug_toolbar.middleware.DebugToolbarMiddleware occurs "
499-
"before django.middleware.gzip.GZipMiddleware in "
500-
"MIDDLEWARE.",
501-
hint="Move debug_toolbar.middleware.DebugToolbarMiddleware "
502-
"to after django.middleware.gzip.GZipMiddleware in "
503-
"MIDDLEWARE.",
504-
id="debug_toolbar.W003",
505-
)
506-
],
507-
)
508-
509-
@override_settings(
510-
MIDDLEWARE_CLASSES=[
511-
"django.contrib.messages.middleware.MessageMiddleware",
512-
"django.contrib.sessions.middleware.SessionMiddleware",
513-
"django.contrib.auth.middleware.AuthenticationMiddleware",
514-
"django.middleware.gzip.GZipMiddleware",
515-
"debug_toolbar.middleware.DebugToolbarMiddleware",
516-
]
517-
)
518-
def test_check_middleware_classes_error(self):
519-
messages = run_checks()
520-
self.assertIn(
521-
Warning(
522-
"debug_toolbar is incompatible with MIDDLEWARE_CLASSES setting.",
523-
hint="Use MIDDLEWARE instead of MIDDLEWARE_CLASSES",
524-
id="debug_toolbar.W004",
525-
),
526-
messages,
527-
)
528-
529-
@override_settings(
530-
STATICFILES_DIRS=[PATH_DOES_NOT_EXIST],
531-
)
532-
def test_panel_check_errors(self):
533-
messages = run_checks()
534-
self.assertEqual(
535-
messages,
536-
[
537-
Warning(
538-
"debug_toolbar requires the STATICFILES_DIRS directories to exist.",
539-
hint="Running manage.py collectstatic may help uncover the issue.",
540-
id="debug_toolbar.staticfiles.W001",
541-
)
542-
],
543-
)

0 commit comments

Comments
 (0)