mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #29817 -- Deprecated settings.FILE_CHARSET.
This commit is contained in:
40
tests/settings_tests/test_file_charset.py
Normal file
40
tests/settings_tests/test_file_charset.py
Normal file
@@ -0,0 +1,40 @@
|
||||
import sys
|
||||
from types import ModuleType
|
||||
|
||||
from django.conf import FILE_CHARSET_DEPRECATED_MSG, Settings, settings
|
||||
from django.test import SimpleTestCase, ignore_warnings
|
||||
from django.utils.deprecation import RemovedInDjango31Warning
|
||||
|
||||
|
||||
class DeprecationTests(SimpleTestCase):
|
||||
msg = FILE_CHARSET_DEPRECATED_MSG
|
||||
|
||||
def test_override_settings_warning(self):
|
||||
with self.assertRaisesMessage(RemovedInDjango31Warning, self.msg):
|
||||
with self.settings(FILE_CHARSET='latin1'):
|
||||
pass
|
||||
|
||||
def test_settings_init_warning(self):
|
||||
settings_module = ModuleType('fake_settings_module')
|
||||
settings_module.FILE_CHARSET = 'latin1'
|
||||
settings_module.SECRET_KEY = 'ABC'
|
||||
sys.modules['fake_settings_module'] = settings_module
|
||||
try:
|
||||
with self.assertRaisesMessage(RemovedInDjango31Warning, self.msg):
|
||||
Settings('fake_settings_module')
|
||||
finally:
|
||||
del sys.modules['fake_settings_module']
|
||||
|
||||
def test_access_warning(self):
|
||||
with self.assertRaisesMessage(RemovedInDjango31Warning, self.msg):
|
||||
settings.FILE_CHARSET
|
||||
# Works a second time.
|
||||
with self.assertRaisesMessage(RemovedInDjango31Warning, self.msg):
|
||||
settings.FILE_CHARSET
|
||||
|
||||
@ignore_warnings(category=RemovedInDjango31Warning)
|
||||
def test_access(self):
|
||||
with self.settings(FILE_CHARSET='latin1'):
|
||||
self.assertEqual(settings.FILE_CHARSET, 'latin1')
|
||||
# Works a second time.
|
||||
self.assertEqual(settings.FILE_CHARSET, 'latin1')
|
||||
Reference in New Issue
Block a user