]> granicus.if.org Git - python/commitdiff
Issue #13125: Silence spurious test_lib2to3 output when in non-verbose mode.
authorAntoine Pitrou <solipsis@pitrou.net>
Mon, 27 Feb 2012 18:55:36 +0000 (19:55 +0100)
committerAntoine Pitrou <solipsis@pitrou.net>
Mon, 27 Feb 2012 18:55:36 +0000 (19:55 +0100)
Patch by Mikhail Novikov.

Lib/lib2to3/tests/test_parser.py
Misc/ACKS
Misc/NEWS

index f32404cc1bdf3315eb736254744e79bb7274a0d5..3968e6a41a6e418a7414f5943a1a59c2bd099bcd 100644 (file)
@@ -11,10 +11,14 @@ from __future__ import with_statement
 # Testing imports
 from . import support
 from .support import driver, test_dir
+from test.support import verbose
 
 # Python imports
 import os
+import sys
 import unittest
+import warnings
+import subprocess
 
 # Local imports
 from lib2to3.pgen2 import tokenize
@@ -171,10 +175,12 @@ class TestParserIdempotency(support.TestCase):
             try:
                 tree = driver.parse_string(source)
             except ParseError as err:
-                print('ParseError on file', filepath, err)
+                if verbose > 0:
+                    warnings.warn('ParseError on file %s (%s)' % (filepath, err))
                 continue
             new = str(tree)
-            if diff(filepath, new):
+            x = diff(filepath, new)
+            if x:
                 self.fail("Idempotency failed: %s" % filepath)
 
     def test_extended_unpacking(self):
@@ -183,6 +189,7 @@ class TestParserIdempotency(support.TestCase):
         driver.parse_string("(z, *y, w) = m\n")
         driver.parse_string("for *z, m in d: pass\n")
 
+
 class TestLiterals(GrammarTest):
 
     def validate(self, s):
@@ -221,7 +228,7 @@ def diff(fn, result):
         with open('@', 'w') as f:
             f.write(str(result))
         fn = fn.replace('"', '\\"')
-        return os.system('diff -u "%s" @' % fn)
+        return subprocess.call(['diff', '-u', fn, '@'], stdout=(subprocess.DEVNULL if verbose < 1 else None))
     finally:
         try:
             os.remove("@")
index 36d7e84345b9c47c9a6a717d79e2fdadfc0df461..3f9cff936a5d4881c38c708902045cbed5adb7ee 100644 (file)
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -665,6 +665,7 @@ Stefan Norberg
 Tim Northover
 Joe Norton
 Neal Norwitz
+Mikhail Novikov
 Michal Nowikowski
 Steffen Daode Nurpmeso
 Nigel O'Brian
index b69eb4b60f66592021bdba7b5df8d442fb856591..d8dbe791d496d7c536665473a779adbfeb0a67aa 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -127,6 +127,9 @@ Core and Builtins
 Library
 -------
 
+- Issue #13125: Silence spurious test_lib2to3 output when in non-verbose mode.
+  Patch by Mikhail Novikov.
+
 - Issue #13447: Add a test file to host regression tests for bugs in the
   scripts found in the Tools directory.