Skip to content

Commit aa1fa13

Browse files
committed
mozillaGH-72 Add tests for FormattedPolicyCSPMiddleware
1 parent 71bb768 commit aa1fa13

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

csp/tests/test_contrib.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22
from django.test import RequestFactory
33
from django.test.utils import override_settings
44

5+
from csp.contrib.formatted_policy import FormattedPolicyCSPMiddleware
56
from csp.contrib.rate_limiting import RateLimitedCSPMiddleware
67
from csp.tests.utils import response
78

89

910
HEADER = 'Content-Security-Policy'
10-
mw = RateLimitedCSPMiddleware(response())
11+
rate_limited_mw = RateLimitedCSPMiddleware(response())
12+
formatted_mw = FormattedPolicyCSPMiddleware(response())
1113
rf = RequestFactory()
1214

1315

@@ -17,8 +19,16 @@ def test_report_percentage():
1719
for _ in range(5000):
1820
request = rf.get('/')
1921
response = HttpResponse()
20-
mw.process_response(request, response)
22+
rate_limited_mw.process_response(request, response)
2123
if 'report-uri' in response[HEADER]:
2224
times_seen += 1
2325
# Roughly 10%
2426
assert 400 <= times_seen <= 600
27+
28+
29+
@override_legacy_settings(CSP_DEFAULT_SRC=["{host}"])
30+
def test_formatted_policy():
31+
request = rf.get('/', HTTP_HOST='example.com')
32+
response = HttpResponse()
33+
formatted_mw.process_response(request, response)
34+
assert response[HEADER] == 'default-src example.com'

0 commit comments

Comments
 (0)