summaryrefslogtreecommitdiff
path: root/tests/check_framework/test_security.py
diff options
context:
space:
mode:
authorEd Morley <emorley@mozilla.com>2016-07-26 13:05:27 +0100
committerTim Graham <timograham@gmail.com>2016-08-10 20:31:01 -0400
commit7399fee6c3bb7eded1ecf5855d71520db299d79d (patch)
tree8f767de16e2a46eea82aaffd1c83506c94a67baa /tests/check_framework/test_security.py
parent3c2447dd13e495d57700ca8447896acd85044444 (diff)
Refs #26947 -- Added a deployment system check for SECURE_HSTS_PRELOAD.
Diffstat (limited to 'tests/check_framework/test_security.py')
-rw-r--r--tests/check_framework/test_security.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/tests/check_framework/test_security.py b/tests/check_framework/test_security.py
index b4591030f5..ebd1ffb0d3 100644
--- a/tests/check_framework/test_security.py
+++ b/tests/check_framework/test_security.py
@@ -307,6 +307,50 @@ class CheckStrictTransportSecuritySubdomainsTest(SimpleTestCase):
self.assertEqual(self.func(None), [])
+class CheckStrictTransportSecurityPreloadTest(SimpleTestCase):
+ @property
+ def func(self):
+ from django.core.checks.security.base import check_sts_preload
+ return check_sts_preload
+
+ @override_settings(
+ MIDDLEWARE=["django.middleware.security.SecurityMiddleware"],
+ SECURE_HSTS_PRELOAD=False,
+ SECURE_HSTS_SECONDS=3600,
+ )
+ def test_no_sts_preload(self):
+ """
+ Warn if SECURE_HSTS_PRELOAD isn't True.
+ """
+ self.assertEqual(self.func(None), [base.W021])
+
+ @override_settings(MIDDLEWARE=[], SECURE_HSTS_PRELOAD=False, SECURE_HSTS_SECONDS=3600)
+ def test_no_sts_preload_no_middleware(self):
+ """
+ Don't warn if SecurityMiddleware isn't installed.
+ """
+ self.assertEqual(self.func(None), [])
+
+ @override_settings(
+ MIDDLEWARE=["django.middleware.security.SecurityMiddleware"],
+ SECURE_SSL_REDIRECT=False,
+ SECURE_HSTS_SECONDS=None,
+ )
+ def test_no_sts_preload_no_seconds(self):
+ """
+ Don't warn if SECURE_HSTS_SECONDS isn't set.
+ """
+ self.assertEqual(self.func(None), [])
+
+ @override_settings(
+ MIDDLEWARE=["django.middleware.security.SecurityMiddleware"],
+ SECURE_HSTS_PRELOAD=True,
+ SECURE_HSTS_SECONDS=3600,
+ )
+ def test_with_sts_preload(self):
+ self.assertEqual(self.func(None), [])
+
+
class CheckXFrameOptionsMiddlewareTest(SimpleTestCase):
@property
def func(self):