Kaydet (Commit) 29650116 authored tarafından Victor Stinner's avatar Victor Stinner

regrtest: give more information when a child process fails with an error

different than KeyboardInterrupt
üst bded28c0
...@@ -440,8 +440,11 @@ def main(tests=None, testdir=None, verbose=0, quiet=False, ...@@ -440,8 +440,11 @@ def main(tests=None, testdir=None, verbose=0, quiet=False,
args, kwargs = json.loads(a) args, kwargs = json.loads(a)
try: try:
result = runtest(*args, **kwargs) result = runtest(*args, **kwargs)
except KeyboardInterrupt:
result = INTERRUPTED, ''
except BaseException as e: except BaseException as e:
result = INTERRUPTED, e.__class__.__name__ traceback.print_exc()
result = CHILD_ERROR, str(e)
sys.stdout.flush() sys.stdout.flush()
print() # Force a newline (just in case) print() # Force a newline (just in case)
print(json.dumps(result)) print(json.dumps(result))
...@@ -684,8 +687,7 @@ def main(tests=None, testdir=None, verbose=0, quiet=False, ...@@ -684,8 +687,7 @@ def main(tests=None, testdir=None, verbose=0, quiet=False,
sys.stdout.flush() sys.stdout.flush()
sys.stderr.flush() sys.stderr.flush()
if result[0] == INTERRUPTED: if result[0] == INTERRUPTED:
assert result[1] == 'KeyboardInterrupt' raise KeyboardInterrupt
raise KeyboardInterrupt # What else?
if result[0] == CHILD_ERROR: if result[0] == CHILD_ERROR:
raise Exception("Child error on {}: {}".format(test, result[1])) raise Exception("Child error on {}: {}".format(test, result[1]))
test_index += 1 test_index += 1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment