From 557c514f900b1280cfd4a892be893dd4c338ae74 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Wed, 7 Jan 2015 18:49:02 -0500 Subject: [PATCH] [1.7.x] Fixed #24095 -- Prevented WarningLoggerTests from leaking a warnings filter. Backport of ade985999657eaef6a9510c2aeba9b2196d7bf6e from master --- tests/logging_tests/tests.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/tests/logging_tests/tests.py b/tests/logging_tests/tests.py index d840225727..2a28abdc22 100644 --- a/tests/logging_tests/tests.py +++ b/tests/logging_tests/tests.py @@ -120,14 +120,18 @@ class WarningLoggerTests(TestCase): @override_settings(DEBUG=True) def test_warnings_capture(self): - warnings.warn('Foo Deprecated', RemovedInNextVersionWarning) - output = force_text(self.outputs[0].getvalue()) - self.assertTrue('Foo Deprecated' in output) + with warnings.catch_warnings(): + warnings.filterwarnings('always') + warnings.warn('Foo Deprecated', RemovedInNextVersionWarning) + output = force_text(self.outputs[0].getvalue()) + self.assertTrue('Foo Deprecated' in output) def test_warnings_capture_debug_false(self): - warnings.warn('Foo Deprecated', RemovedInNextVersionWarning) - output = force_text(self.outputs[0].getvalue()) - self.assertFalse('Foo Deprecated' in output) + with warnings.catch_warnings(): + warnings.filterwarnings('always') + warnings.warn('Foo Deprecated', RemovedInNextVersionWarning) + output = force_text(self.outputs[0].getvalue()) + self.assertNotIn('Foo Deprecated', output) @override_settings(DEBUG=True) def test_error_filter_still_raises(self):