mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #27626 -- Moved MEDIA_URL/STATIC_URL validation to a system check.
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
from django.conf import settings
|
||||
from django.core.checks.messages import Warning
|
||||
from django.core.checks.urls import (
|
||||
check_url_config, check_url_namespaces_unique,
|
||||
E006, check_url_config, check_url_namespaces_unique, check_url_settings,
|
||||
get_warning_for_invalid_pattern,
|
||||
)
|
||||
from django.test import SimpleTestCase
|
||||
from django.test.utils import override_settings
|
||||
|
||||
|
||||
class CheckUrlsTest(SimpleTestCase):
|
||||
class CheckUrlConfigTests(SimpleTestCase):
|
||||
@override_settings(ROOT_URLCONF='check_framework.urls.no_warnings')
|
||||
def test_no_warnings(self):
|
||||
result = check_url_config(None)
|
||||
@@ -116,3 +116,28 @@ class CheckUrlsTest(SimpleTestCase):
|
||||
def test_check_unique_namespaces(self):
|
||||
result = check_url_namespaces_unique(None)
|
||||
self.assertEqual(result, [])
|
||||
|
||||
|
||||
class CheckURLSettingsTests(SimpleTestCase):
|
||||
|
||||
@override_settings(STATIC_URL='a/', MEDIA_URL='b/')
|
||||
def test_slash_no_errors(self):
|
||||
self.assertEqual(check_url_settings(None), [])
|
||||
|
||||
@override_settings(STATIC_URL='', MEDIA_URL='')
|
||||
def test_empty_string_no_errors(self):
|
||||
self.assertEqual(check_url_settings(None), [])
|
||||
|
||||
@override_settings(STATIC_URL='noslash')
|
||||
def test_static_url_no_slash(self):
|
||||
self.assertEqual(check_url_settings(None), [E006('STATIC_URL')])
|
||||
|
||||
@override_settings(STATIC_URL='slashes//')
|
||||
def test_static_url_double_slash_allowed(self):
|
||||
# The check allows for a double slash, presuming the user knows what
|
||||
# they are doing.
|
||||
self.assertEqual(check_url_settings(None), [])
|
||||
|
||||
@override_settings(MEDIA_URL='noslash')
|
||||
def test_media_url_no_slash(self):
|
||||
self.assertEqual(check_url_settings(None), [E006('MEDIA_URL')])
|
||||
|
||||
Reference in New Issue
Block a user