[Python-checkins] bpo-45208: Make test_pdb.test_checkline_is_not_executable() quiet (GH-28354) (GH-28381)

vstinner webhook-mailer at python.org
Thu Sep 16 03:53:14 EDT 2021


https://github.com/python/cpython/commit/471b3811fe695dcd388396893a0f375a8866ac0c
commit: 471b3811fe695dcd388396893a0f375a8866ac0c
branch: 3.9
author: Victor Stinner <vstinner at python.org>
committer: vstinner <vstinner at python.org>
date: 2021-09-16T09:53:02+02:00
summary:

bpo-45208: Make test_pdb.test_checkline_is_not_executable() quiet (GH-28354) (GH-28381)

test_pdb.test_checkline_is_not_executable() no longer writes output
to stdout.

Remove also unused variables 'f'.

(cherry picked from commit e08e491a6ceea8ca105612df10147418c4e105b8)

files:
M Lib/test/test_pdb.py

diff --git a/Lib/test/test_pdb.py b/Lib/test/test_pdb.py
index 0653a64b0a697..cb9cd07b07143 100644
--- a/Lib/test/test_pdb.py
+++ b/Lib/test/test_pdb.py
@@ -11,7 +11,7 @@
 import textwrap
 import linecache
 
-from contextlib import ExitStack
+from contextlib import ExitStack, redirect_stdout
 from io import StringIO
 from test import support
 # This little helper class is essential for testing pdb under doctest.
@@ -1625,7 +1625,7 @@ def test_module_without_a_main(self):
         support.rmtree(module_name)
         init_file = module_name + '/__init__.py'
         os.mkdir(module_name)
-        with open(init_file, 'w') as f:
+        with open(init_file, 'w'):
             pass
         self.addCleanup(support.rmtree, module_name)
         stdout, stderr = self._run_pdb(['-m', module_name], "")
@@ -1638,7 +1638,7 @@ def test_package_without_a_main(self):
         support.rmtree(pkg_name)
         modpath = pkg_name + '/' + module_name
         os.makedirs(modpath)
-        with open(modpath + '/__init__.py', 'w') as f:
+        with open(modpath + '/__init__.py', 'w'):
             pass
         self.addCleanup(support.rmtree, pkg_name)
         stdout, stderr = self._run_pdb(['-m', modpath.replace('/', '.')], "")
@@ -1851,19 +1851,20 @@ def test_checkline_after_reset(self):
         self.assertEqual(db.checkline(support.TESTFN, 1), 1)
 
     def test_checkline_is_not_executable(self):
-        with open(support.TESTFN, "w") as f:
-            # Test for comments, docstrings and empty lines
-            s = textwrap.dedent("""
-                # Comment
-                \"\"\" docstring \"\"\"
-                ''' docstring '''
+        # Test for comments, docstrings and empty lines
+        s = textwrap.dedent("""
+            # Comment
+            \"\"\" docstring \"\"\"
+            ''' docstring '''
 
-            """)
+        """)
+        with open(support.TESTFN, "w") as f:
             f.write(s)
-        db = pdb.Pdb()
         num_lines = len(s.splitlines()) + 2  # Test for EOF
-        for lineno in range(num_lines):
-            self.assertFalse(db.checkline(support.TESTFN, lineno))
+        with redirect_stdout(StringIO()):
+            db = pdb.Pdb()
+            for lineno in range(num_lines):
+                self.assertFalse(db.checkline(support.TESTFN, lineno))
 
 
 def load_tests(*args):



More information about the Python-checkins mailing list