diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2021-10-13 03:24:47 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-13 12:24:47 +0200 |
commit | 7e74d99c532f3eb55a86d10d30c068b03f2ad025 (patch) | |
tree | a80d372fb53b52772a02d3a26ed7063da57f0cca /Lib/test | |
parent | 47673c47db352916384e4f35fa520e48475e2601 (diff) | |
download | cpython-git-7e74d99c532f3eb55a86d10d30c068b03f2ad025.tar.gz |
bpo-45453: Fix test_embed.StdPrinterTests (GH-28916) (GH-28917)
test_embed.StdPrinterTests now always use the file descriptor 1 for
stdout, rather than using sys.__stdout__.fileno().
PyFile_NewStdPrinter() does crash if the argument is not 1 or 2.
Fix also a few pyflakes warnings: remove unused import and variables.
(cherry picked from commit 678433f25e0d08dad7edf72be8f0cf9420e4ed2c)
Co-authored-by: Victor Stinner <vstinner@python.org>
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_embed.py | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py index da9b555522..503d4925c9 100644 --- a/Lib/test/test_embed.py +++ b/Lib/test/test_embed.py @@ -588,7 +588,6 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase): def get_expected_config(self, expected_preconfig, expected, expected_pathconfig, env, api, modify_path_cb=None): - cls = self.__class__ configs = self._get_expected_config() pre_config = configs['pre_config'] @@ -1235,7 +1234,6 @@ class InitConfigTests(EmbeddingTestsMixin, unittest.TestCase): self.fail(f"Unable to find home in {paths!r}") prefix = exec_prefix = home - ver = sys.version_info expected_paths = self.module_search_paths(prefix=home, exec_prefix=home) config = { @@ -1505,8 +1503,7 @@ class StdPrinterTests(EmbeddingTestsMixin, unittest.TestCase): # "Set up a preliminary stderr printer until we have enough # infrastructure for the io module in place." - def get_stdout_fd(self): - return sys.__stdout__.fileno() + STDOUT_FD = 1 def create_printer(self, fd): ctypes = import_helper.import_module('ctypes') @@ -1518,7 +1515,7 @@ class StdPrinterTests(EmbeddingTestsMixin, unittest.TestCase): def test_write(self): message = "unicode:\xe9-\u20ac-\udc80!\n" - stdout_fd = self.get_stdout_fd() + stdout_fd = self.STDOUT_FD stdout_fd_copy = os.dup(stdout_fd) self.addCleanup(os.close, stdout_fd_copy) @@ -1539,7 +1536,7 @@ class StdPrinterTests(EmbeddingTestsMixin, unittest.TestCase): self.assertEqual(data, message.encode('utf8', 'backslashreplace')) def test_methods(self): - fd = self.get_stdout_fd() + fd = self.STDOUT_FD printer = self.create_printer(fd) self.assertEqual(printer.fileno(), fd) self.assertEqual(printer.isatty(), os.isatty(fd)) @@ -1547,7 +1544,7 @@ class StdPrinterTests(EmbeddingTestsMixin, unittest.TestCase): printer.close() # noop def test_disallow_instantiation(self): - fd = self.get_stdout_fd() + fd = self.STDOUT_FD printer = self.create_printer(fd) support.check_disallow_instantiation(self, type(printer)) |