bpo-45205: Make test_compileall quiet (GH-28356) (GH-28370)

Make test_compileall quiet: test_year_2038_mtime_compilation() and
test_larger_than_32_bit_times() of test_compileall no longer log
"Compiling ..." messages to stdout.
(cherry picked from commit cc057ff522)

Co-authored-by: Victor Stinner <vstinner@python.org>
This commit is contained in:
Miss Islington (bot) 2021-09-15 12:31:59 -07:00 committed by GitHub
parent bbaf5c27e6
commit 17000b5a80
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -91,7 +91,8 @@ class CompileallTestsBase:
os.utime(self.source_path, (2**32 - 1, 2**32 - 1))
except (OverflowError, OSError):
self.skipTest("filesystem doesn't support timestamps near 2**32")
self.assertTrue(compileall.compile_file(self.source_path))
with contextlib.redirect_stdout(io.StringIO()):
self.assertTrue(compileall.compile_file(self.source_path))
def test_larger_than_32_bit_times(self):
# This is similar to the test above but we skip it if the OS doesn't
@ -100,7 +101,8 @@ class CompileallTestsBase:
os.utime(self.source_path, (2**35, 2**35))
except (OverflowError, OSError):
self.skipTest("filesystem doesn't support large timestamps")
self.assertTrue(compileall.compile_file(self.source_path))
with contextlib.redirect_stdout(io.StringIO()):
self.assertTrue(compileall.compile_file(self.source_path))
def recreation_check(self, metadata):
"""Check that compileall recreates bytecode when the new metadata is