Closes #17521: Merged fix from 3.3.

This commit is contained in:
Vinay Sajip 2013-03-23 11:23:05 +00:00
commit 8ec95b81d5
3 changed files with 37 additions and 4 deletions

View file

@ -1261,9 +1261,30 @@ class ConfigFileTest(BaseTest):
datefmt=
"""
def apply_config(self, conf):
disable_test = """
[loggers]
keys=root
[handlers]
keys=screen
[formatters]
keys=
[logger_root]
level=DEBUG
handlers=screen
[handler_screen]
level=DEBUG
class=StreamHandler
args=(sys.stdout,)
formatter=
"""
def apply_config(self, conf, **kwargs):
file = io.StringIO(textwrap.dedent(conf))
logging.config.fileConfig(file)
logging.config.fileConfig(file, **kwargs)
def test_config0_ok(self):
# A simple config file which overrides the default settings.
@ -1385,6 +1406,15 @@ class ConfigFileTest(BaseTest):
# Original logger output is empty.
self.assert_log_lines([])
def test_logger_disabling(self):
self.apply_config(self.disable_test)
logger = logging.getLogger('foo')
self.assertFalse(logger.disabled)
self.apply_config(self.disable_test)
self.assertTrue(logger.disabled)
self.apply_config(self.disable_test, disable_existing_loggers=False)
self.assertFalse(logger.disabled)
@unittest.skipUnless(threading, 'Threading required for this test.')
class SocketHandlerTest(BaseTest):