Avoid adding duplicate handler (#4)
If a logging handler has already been added don't add it again.
This commit is contained in:
committed by
Chris MacNaughton
parent
5c68401d96
commit
6dad655b5d
@@ -49,6 +49,7 @@ class TestCLIUtils(ut_utils.BaseTestCase):
|
||||
self.patch_object(cli_utils, "logging")
|
||||
_logformatter = mock.MagicMock()
|
||||
_logger = mock.MagicMock()
|
||||
_logger.hasHandlers.return_value = False
|
||||
_consolehandler = mock.MagicMock()
|
||||
self.logging.Formatter.return_value = _logformatter
|
||||
self.logging.getLogger.return_value = _logger
|
||||
@@ -61,3 +62,15 @@ class TestCLIUtils(ut_utils.BaseTestCase):
|
||||
_logger.setLevel.assert_called_with("INFO")
|
||||
_consolehandler.setFormatter.assert_called_with(_logformatter)
|
||||
_logger.addHandler.assert_called_with(_consolehandler)
|
||||
|
||||
def test_setup_logging_existing_handler(self):
|
||||
self.patch_object(cli_utils, "logging")
|
||||
_logformatter = mock.MagicMock()
|
||||
_logger = mock.MagicMock()
|
||||
_logger.hasHandlers.return_value = True
|
||||
_consolehandler = mock.MagicMock()
|
||||
self.logging.Formatter.return_value = _logformatter
|
||||
self.logging.getLogger.return_value = _logger
|
||||
self.logging.StreamHandler.return_value = _consolehandler
|
||||
cli_utils.setup_logging()
|
||||
self.assertFalse(_logger.addHandler.called)
|
||||
|
||||
@@ -50,6 +50,7 @@ def setup_logging():
|
||||
datefmt="%Y-%m-%d %H:%M:%S")
|
||||
rootLogger = logging.getLogger()
|
||||
rootLogger.setLevel('INFO')
|
||||
consoleHandler = logging.StreamHandler()
|
||||
consoleHandler.setFormatter(logFormatter)
|
||||
rootLogger.addHandler(consoleHandler)
|
||||
if not rootLogger.hasHandlers():
|
||||
consoleHandler = logging.StreamHandler()
|
||||
consoleHandler.setFormatter(logFormatter)
|
||||
rootLogger.addHandler(consoleHandler)
|
||||
|
||||
Reference in New Issue
Block a user