1. import sys
    
  2. from types import ModuleType
    
  3. 
    
  4. from django.conf import CSRF_COOKIE_MASKED_DEPRECATED_MSG, Settings, settings
    
  5. from django.test import SimpleTestCase
    
  6. from django.utils.deprecation import RemovedInDjango50Warning
    
  7. 
    
  8. 
    
  9. class CsrfCookieMaskedDeprecationTests(SimpleTestCase):
    
  10.     msg = CSRF_COOKIE_MASKED_DEPRECATED_MSG
    
  11. 
    
  12.     def test_override_settings_warning(self):
    
  13.         with self.assertRaisesMessage(RemovedInDjango50Warning, self.msg):
    
  14.             with self.settings(CSRF_COOKIE_MASKED=True):
    
  15.                 pass
    
  16. 
    
  17.     def test_settings_init_warning(self):
    
  18.         settings_module = ModuleType("fake_settings_module")
    
  19.         settings_module.USE_TZ = False
    
  20.         settings_module.CSRF_COOKIE_MASKED = True
    
  21.         sys.modules["fake_settings_module"] = settings_module
    
  22.         try:
    
  23.             with self.assertRaisesMessage(RemovedInDjango50Warning, self.msg):
    
  24.                 Settings("fake_settings_module")
    
  25.         finally:
    
  26.             del sys.modules["fake_settings_module"]
    
  27. 
    
  28.     def test_access(self):
    
  29.         # Warning is not raised on access.
    
  30.         self.assertEqual(settings.CSRF_COOKIE_MASKED, False)