[Python-checkins] bpo-34997: Fix test_logging.ConfigDictTest.test_out_of_order (GH-9913)

Pablo Galindo webhook-mailer at python.org
Tue Oct 16 10:18:03 EDT 2018

commit: 137b0632dccb992ca11e9445142fb33a29c33a51
branch: master
author: Pablo Galindo <Pablogsal at gmail.com>
committer: GitHub <noreply at github.com>
date: 2018-10-16T15:17:57+01:00

bpo-34997: Fix test_logging.ConfigDictTest.test_out_of_order (GH-9913)

When runnint test_logging with --huntrleaks after commit
18fb1fb943b7dbd7f8a76017ee2a67ef13effb85, test_out_of_order fails
to raise ValueError due to the fact that the new test
test_out_of_order_with_dollar_style mutates the out_of_order
dictionary. Even if the test copies the dictionary first, the mutation
is done in a very deep level so the original one is also affected.

M Lib/test/test_logging.py

diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
index 9802955e6a98..c797d66aa645 100644
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -25,6 +25,7 @@
 import codecs
 import configparser
+import copy
 import datetime
 import pathlib
 import pickle
@@ -3278,7 +3279,7 @@ def test_out_of_order(self):
         self.assertRaises(ValueError, self.apply_config, self.out_of_order)
     def test_out_of_order_with_dollar_style(self):
-        config = self.out_of_order.copy()
+        config = copy.deepcopy(self.out_of_order)
         config['formatters']['mySimpleFormatter']['format'] = "${asctime} (${name}) ${levelname}: ${message}"

More information about the Python-checkins mailing list