28 lines
950 B
Python
28 lines
950 B
Python
|
from django.core.checks import Error
|
||
|
from django.core.checks.compatibility.django_4_0 import (
|
||
|
check_csrf_trusted_origins,
|
||
|
)
|
||
|
from django.test import SimpleTestCase
|
||
|
from django.test.utils import override_settings
|
||
|
|
||
|
|
||
|
class CheckCSRFTrustedOrigins(SimpleTestCase):
|
||
|
|
||
|
@override_settings(CSRF_TRUSTED_ORIGINS=['example.com'])
|
||
|
def test_invalid_url(self):
|
||
|
self.assertEqual(check_csrf_trusted_origins(None), [
|
||
|
Error(
|
||
|
'As of Django 4.0, the values in the CSRF_TRUSTED_ORIGINS '
|
||
|
'setting must start with a scheme (usually http:// or '
|
||
|
'https://) but found example.com. See the release notes for '
|
||
|
'details.',
|
||
|
id='4_0.E001',
|
||
|
)
|
||
|
])
|
||
|
|
||
|
@override_settings(
|
||
|
CSRF_TRUSTED_ORIGINS=['http://example.com', 'https://example.com'],
|
||
|
)
|
||
|
def test_valid_urls(self):
|
||
|
self.assertEqual(check_csrf_trusted_origins(None), [])
|