mirror of
https://github.com/pretix/pretix.git
synced 2026-08-08 10:27:49 +00:00
Add tests to prevent reintroducing CSP nonces, as discussed in PR #6387 (Z#23240534)
This commit is contained in:
@@ -224,3 +224,31 @@ def test_one_view(logged_in_client, url, expected, event, item, item_category, o
|
||||
)
|
||||
response = logged_in_client.get(url)
|
||||
assert response.status_code == expected
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_csp_header_control(logged_in_client):
|
||||
# Do not reintroduce any CSP nonces into control responses, as discussed in PR #6387
|
||||
response = logged_in_client.get('/control/')
|
||||
assert response.status_code == 200
|
||||
assert 'nonce-' not in response['Content-Security-Policy']
|
||||
|
||||
|
||||
@pytest.mark.parametrize('url', [
|
||||
'/control/login',
|
||||
'/',
|
||||
'/{orga}/{event}/',
|
||||
])
|
||||
@pytest.mark.django_db
|
||||
def test_csp_header_unauthenticated(client, url, event):
|
||||
# Do not reintroduce any CSP nonces into most presale responses, as discussed in PR #6387
|
||||
with scope(organizer=event.organizer):
|
||||
url = url.format(
|
||||
event=event.slug, orga=event.organizer.slug,
|
||||
)
|
||||
event.live = True
|
||||
event.save()
|
||||
response = client.get(url)
|
||||
assert response.status_code == 200
|
||||
assert 'script-src' in response['Content-Security-Policy']
|
||||
assert 'nonce-' not in response['Content-Security-Policy']
|
||||
|
||||
Reference in New Issue
Block a user