Issue #14742: test_unparse now only checks a limited number of files unless the 'cpu' resource is specified.
diff --git a/Lib/test/test_tools.py b/Lib/test/test_tools.py
index cbe6d80..564b747 100644
--- a/Lib/test/test_tools.py
+++ b/Lib/test/test_tools.py
@@ -127,6 +127,7 @@
# Run the tests in Tools/parser/test_unparse.py
with support.DirsOnSysPath(os.path.join(basepath, 'parser')):
from test_unparse import UnparseTestCase
+ from test_unparse import DirectoryTestCase
def test_main():
diff --git a/Tools/parser/test_unparse.py b/Tools/parser/test_unparse.py
index 647366c..be84400 100644
--- a/Tools/parser/test_unparse.py
+++ b/Tools/parser/test_unparse.py
@@ -2,9 +2,10 @@
import test.support
import io
import os
+import random
import tokenize
-import ast
import unparse
+import ast
def read_pyfile(filename):
"""Read and return the contents of a Python source file (as a
@@ -257,6 +258,10 @@
if n.endswith('.py') and not n.startswith('bad'):
names.append(os.path.join(test_dir, n))
+ # Test limited subset of files unless the 'cpu' resource is specified.
+ if not test.support.is_resource_enabled("cpu"):
+ names = random.sample(names, 10)
+
for filename in names:
if test.support.verbose:
print('Testing %s' % filename)