summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2021-09-08 15:09:55 (GMT)
committerPablo Galindo <pablogsal@gmail.com>2021-09-29 11:37:42 (GMT)
commit6ae97bbf4e6540a8287c47d098cfe703260b5fa2 (patch)
treeab6604c6c61fc5cd72d953211c2a4c5dbf96a9c8
parentb09a68ac87128ebb3dd82e22785b150de1cc2337 (diff)
downloadcpython-6ae97bbf4e6540a8287c47d098cfe703260b5fa2.zip
cpython-6ae97bbf4e6540a8287c47d098cfe703260b5fa2.tar.gz
cpython-6ae97bbf4e6540a8287c47d098cfe703260b5fa2.tar.bz2
bpo-45118: Fix regrtest second summary for re-run tests (GH-28183) (GH-28214)
Fix regrtest second summary when using -w/--verbose2 command line option: lists re-run tests in the second test summary. (cherry picked from commit c4ea45d7d2c02674db2fdb96c7eee89324d2dc64) Co-authored-by: Victor Stinner <vstinner@python.org>
-rw-r--r--Lib/test/libregrtest/main.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/Lib/test/libregrtest/main.py b/Lib/test/libregrtest/main.py
index 4dcb639..52cc065 100644
--- a/Lib/test/libregrtest/main.py
+++ b/Lib/test/libregrtest/main.py
@@ -66,6 +66,7 @@ class Regrtest:
self.resource_denieds = []
self.environment_changed = []
self.run_no_tests = []
+ self.need_rerun = []
self.rerun = []
self.first_result = None
self.interrupted = False
@@ -116,7 +117,7 @@ class Regrtest:
elif isinstance(result, Failed):
if not rerun:
self.bad.append(test_name)
- self.rerun.append(result)
+ self.need_rerun.append(result)
elif isinstance(result, DidNotRun):
self.run_no_tests.append(test_name)
elif isinstance(result, Interrupted):
@@ -312,10 +313,12 @@ class Regrtest:
self.log()
self.log("Re-running failed tests in verbose mode")
- rerun_list = self.rerun[:]
- self.rerun = []
+ rerun_list = list(self.need_rerun)
+ self.need_rerun.clear()
for result in rerun_list:
test_name = result.name
+ self.rerun.append(test_name)
+
errors = result.errors or []
failures = result.failures or []
error_names = [test_full_name.split(" ")[0] for (test_full_name, *_) in errors]
@@ -397,7 +400,7 @@ class Regrtest:
if self.rerun:
print()
print("%s:" % count(len(self.rerun), "re-run test"))
- printlist(r.name for r in self.rerun)
+ printlist(self.rerun)
if self.run_no_tests:
print()