From: Victor Stinner <victor.stinner@gmail.com>
Date: Fri, 9 Dec 2016 15:05:51 +0000 (+0100)
Subject: regrtest --fromfile now accepts a list of filenames
X-Git-Tag: v3.7.0a1~1792
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c24217e144c750a1452ca42524230630d022873f;p=python

regrtest --fromfile now accepts a list of filenames
---

diff --git a/Lib/test/libregrtest/main.py b/Lib/test/libregrtest/main.py
index f0effc973c..e113ed63dd 100644
--- a/Lib/test/libregrtest/main.py
+++ b/Lib/test/libregrtest/main.py
@@ -179,19 +179,17 @@ class Regrtest:
             self.tests = []
             # regex to match 'test_builtin' in line:
             # '0:00:00 [  4/400] test_builtin -- test_dict took 1 sec'
-            regex = (r'^(?:[0-9]+:[0-9]+:[0-9]+ *)?'
+            regex = (r'(?:[0-9]+:[0-9]+:[0-9]+ *)?'
                      r'(?:\[[0-9/ ]+\] *)?'
-                     r'(test_[a-zA-Z0-9_]+)')
+                     r'(test_[a-zA-Z0-9_]+)\b(?:\.py)?')
             regex = re.compile(regex)
             with open(os.path.join(support.SAVEDCWD, self.ns.fromfile)) as fp:
                 for line in fp:
+                    line = line.split('#', 1)[0]
                     line = line.strip()
-                    if line.startswith('#'):
-                        continue
-                    match = regex.match(line)
-                    if match is None:
-                        continue
-                    self.tests.append(match.group(1))
+                    match = regex.search(line)
+                    if match is not None:
+                        self.tests.append(match.group(1))
 
         removepy(self.tests)