diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/logging/handlers.py | 2 | ||||
-rw-r--r-- | Lib/test/test_logging.py | 16 |
2 files changed, 18 insertions, 0 deletions
diff --git a/Lib/logging/handlers.py b/Lib/logging/handlers.py index 96384bd..3a48628 100644 --- a/Lib/logging/handlers.py +++ b/Lib/logging/handlers.py @@ -26,6 +26,8 @@ To use, simply 'import logging.handlers' and log away! import logging, socket, os, pickle, struct, time, re from stat import ST_DEV, ST_INO, ST_MTIME +import queue +import threading try: import codecs diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index b62545c..6623a0f 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -41,6 +41,7 @@ import struct import sys import tempfile from test.support import captured_stdout, run_with_locale, run_unittest +from test.support import TestHandler, Matcher import textwrap import unittest import warnings @@ -2092,6 +2093,21 @@ class QueueHandlerTest(BaseTest): self.assertEqual(data.name, self.que_logger.name) self.assertEqual((data.msg, data.args), (msg, None)) + def test_queue_listener(self): + handler = TestHandler(Matcher()) + listener = logging.handlers.QueueListener(self.queue, handler) + listener.start() + try: + self.que_logger.warning(self.next_message()) + self.que_logger.error(self.next_message()) + self.que_logger.critical(self.next_message()) + finally: + listener.stop() + self.assertTrue(handler.matches(levelno=logging.WARNING, message='1')) + self.assertTrue(handler.matches(levelno=logging.ERROR, message='2')) + self.assertTrue(handler.matches(levelno=logging.CRITICAL, message='3')) + + class FormatterTest(unittest.TestCase): def setUp(self): self.common = { |