From b67bc5b617fb2c40e887aeca0ac5a5b2f7f10e76 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Sun, 9 Aug 2026 19:57:45 +0300 Subject: [PATCH] gh-155423: Make BaseFileTest.tearDown() in test_logging robust (GH-155424) Always call BaseTest.tearDown(), which removes the handlers added by setUp(), even if unlinking the log files fails. Tolerate an already removed file. (cherry picked from commit 6f7fb6c95ba9e4d5c1b86d0d4ad83d0cd495976b) Co-authored-by: Serhiy Storchaka --- Lib/test/test_logging.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 5af550ddaf8f89..dca2f542166234 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -6244,11 +6244,12 @@ def setUp(self): self.rmfiles = [] def tearDown(self): - for fn in self.rmfiles: - os.unlink(fn) - if os.path.exists(self.fn): - os.unlink(self.fn) - BaseTest.tearDown(self) + try: + for fn in self.rmfiles: + os_helper.unlink(fn) + os_helper.unlink(self.fn) + finally: + BaseTest.tearDown(self) def assertLogFile(self, filename): "Assert a log file is there and register it for deletion"