summaryrefslogtreecommitdiff
path: root/tests/settings_tests
diff options
context:
space:
mode:
authorJoeri Bekker <joeri@maykinmedia.nl>2013-05-18 13:43:51 +0200
committerTim Graham <timograham@gmail.com>2013-07-12 07:10:18 -0400
commit66f3d57b79eee0381c29ee4c76582d6b182bfad9 (patch)
tree91bce78a5801f56075a9f2845fb0438f7c869fca /tests/settings_tests
parentb82a2c41387648f81387b1e03371331db3630269 (diff)
Fixed #19031 -- Added a warning when using override_settings with 'DATABASES'
Diffstat (limited to 'tests/settings_tests')
-rw-r--r--tests/settings_tests/tests.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/settings_tests/tests.py b/tests/settings_tests/tests.py
index bfd8d607a9..87ed4d4f5e 100644
--- a/tests/settings_tests/tests.py
+++ b/tests/settings_tests/tests.py
@@ -203,6 +203,29 @@ class SettingsTests(TestCase):
'ALLOWED_INCLUDE_ROOTS', '/var/www/ssi/')
+class TestComplexSettingOverride(TestCase):
+ def setUp(self):
+ self.old_warn_override_settings = signals.COMPLEX_OVERRIDE_SETTINGS.copy()
+ signals.COMPLEX_OVERRIDE_SETTINGS.add('TEST_WARN')
+
+ def tearDown(self):
+ signals.COMPLEX_OVERRIDE_SETTINGS = self.old_warn_override_settings
+ self.assertFalse('TEST_WARN' in signals.COMPLEX_OVERRIDE_SETTINGS)
+
+ def test_complex_override_warning(self):
+ """Regression test for #19031"""
+ with warnings.catch_warnings(record=True) as w:
+ warnings.simplefilter("always")
+
+ override = override_settings(TEST_WARN='override')
+ override.enable()
+ self.assertEqual('override', settings.TEST_WARN)
+ override.disable()
+
+ self.assertEqual(len(w), 1)
+ self.assertEqual('Overriding setting TEST_WARN can lead to unexpected behaviour.', str(w[-1].message))
+
+
class TrailingSlashURLTests(TestCase):
"""
Tests for the MEDIA_URL and STATIC_URL settings.