]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-35726: Add test for QueueHandler with multiple handlers (GH-11659) (GH-13061)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Thu, 2 May 2019 17:24:01 +0000 (10:24 -0700)
committerNed Deily <nad@python.org>
Thu, 2 May 2019 17:24:01 +0000 (13:24 -0400)
(cherry picked from commit 2dad96013ca24abdc5ba5a369ea42d70ff02487a)

Co-authored-by: Xtreak <tir.karthi@gmail.com>
Lib/test/test_logging.py

index 3b671ce2ab370914fd782c5d0f976ad478eddc37..6c5cb81377b39638cb0e9a40a98cffc56eea0bbe 100644 (file)
@@ -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