From 3f8f64ebf3ab05038ed0b5a4adc83d0a5e9fbb82 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Thu, 2 May 2019 10:24:01 -0700 Subject: [PATCH] bpo-35726: Add test for QueueHandler with multiple handlers (GH-11659) (GH-13061) (cherry picked from commit 2dad96013ca24abdc5ba5a369ea42d70ff02487a) Co-authored-by: Xtreak --- Lib/test/test_logging.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 3b671ce2ab3..6c5cb81377b 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -3361,6 +3361,19 @@ class QueueHandlerTest(BaseTest): listener.stop() self.assertEqual(self.stream.getvalue().strip().count('Traceback'), 1) + @unittest.skipUnless(hasattr(logging.handlers, 'QueueListener'), + 'logging.handlers.QueueListener required for this test') + def test_queue_listener_with_multiple_handlers(self): + # Test that queue handler format doesn't affect other handler formats (bpo-35726). + self.que_hdlr.setFormatter(self.root_formatter) + self.que_logger.addHandler(self.root_hdlr) + + listener = logging.handlers.QueueListener(self.queue, self.que_hdlr) + listener.start() + self.que_logger.error("error") + listener.stop() + self.assertEqual(self.stream.getvalue().strip(), "que -> ERROR: error") + if hasattr(logging.handlers, 'QueueListener'): import multiprocessing from unittest.mock import patch