--- Lib/test/libregrtest/main.py +++ Lib/test/libregrtest/main.py @@ -86,7 +86,7 @@ self.next_single_filename = None def accumulate_result(self, test, result): - ok, test_time = result + ok, test_time = result[:2] self.test_times.append((test_time, test)) if ok == PASSED: self.good.append(test) --- Lib/test/libregrtest/runtest_mp.py +++ Lib/test/libregrtest/runtest_mp.py @@ -68,10 +68,10 @@ try: result = runtest(ns, testname) except KeyboardInterrupt: - result = INTERRUPTED, '' + result = INTERRUPTED, 0.0 except BaseException as e: traceback.print_exc() - result = CHILD_ERROR, str(e) + result = CHILD_ERROR, 0.0, str(e) print() # Force a newline (just in case) print(json.dumps(result), flush=True) @@ -124,7 +124,7 @@ stdout, _, result = stdout.strip().rpartition("\n") if retcode != 0: - result = (CHILD_ERROR, "Exit code %s" % retcode) + result = (CHILD_ERROR, 0.0, "Exit code %s" % retcode) self.output.put((test, stdout.rstrip(), stderr.rstrip(), result)) return True @@ -208,7 +208,7 @@ if result[0] == INTERRUPTED: raise KeyboardInterrupt if result[0] == CHILD_ERROR: - msg = "Child error on {}: {}".format(test, result[1]) + msg = "Child error on {}: {}".format(test, result[2]) raise Exception(msg) test_index += 1 except KeyboardInterrupt: