summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2023-09-05 01:09:42 (GMT)
committerGitHub <noreply@github.com>2023-09-05 01:09:42 (GMT)
commit1170d5a292b46f754cd29c245a040f1602f70301 (patch)
tree41699059e3e3daac65260d429f5a186b38c24b4e
parent676593859e75d4c3543d143092b77f55389006e4 (diff)
downloadcpython-1170d5a292b46f754cd29c245a040f1602f70301.zip
cpython-1170d5a292b46f754cd29c245a040f1602f70301.tar.gz
cpython-1170d5a292b46f754cd29c245a040f1602f70301.tar.bz2
gh-108834: regrtest --fail-rerun exits with code 5 (#108896)
When the --fail-rerun option is used and a test fails and then pass, regrtest now uses exit code 5 ("rerun) instead of 2 ("bad test").
-rw-r--r--Lib/test/libregrtest/main.py5
-rw-r--r--Lib/test/test_regrtest.py5
2 files changed, 6 insertions, 4 deletions
diff --git a/Lib/test/libregrtest/main.py b/Lib/test/libregrtest/main.py
index 77a4090..ab03647 100644
--- a/Lib/test/libregrtest/main.py
+++ b/Lib/test/libregrtest/main.py
@@ -29,9 +29,10 @@ from test.support import threading_helper
EXIT_TIMEOUT = 120.0
EXITCODE_BAD_TEST = 2
-EXITCODE_INTERRUPTED = 130
EXITCODE_ENV_CHANGED = 3
EXITCODE_NO_TESTS_RAN = 4
+EXITCODE_RERUN_FAIL = 5
+EXITCODE_INTERRUPTED = 130
class Regrtest:
@@ -847,7 +848,7 @@ class Regrtest:
elif self.no_tests_run():
exitcode = EXITCODE_NO_TESTS_RAN
elif self.rerun and self.ns.fail_rerun:
- exitcode = EXITCODE_BAD_TEST
+ exitcode = EXITCODE_RERUN_FAIL
return exitcode
def action_run_tests(self):
diff --git a/Lib/test/test_regrtest.py b/Lib/test/test_regrtest.py
index eb321c4..c5fb3dc 100644
--- a/Lib/test/test_regrtest.py
+++ b/Lib/test/test_regrtest.py
@@ -34,6 +34,7 @@ LOG_PREFIX = r'[0-9]+:[0-9]+:[0-9]+ (?:load avg: [0-9]+\.[0-9]{2} )?'
EXITCODE_BAD_TEST = 2
EXITCODE_ENV_CHANGED = 3
EXITCODE_NO_TESTS_RAN = 4
+EXITCODE_RERUN_FAIL = 5
EXITCODE_INTERRUPTED = 130
TEST_INTERRUPTED = textwrap.dedent("""
@@ -1265,10 +1266,10 @@ class ArgsTestCase(BaseTestCase):
stats=TestStats(3, 1))
os_helper.unlink(marker_filename)
- # with --fail-rerun, exit code EXITCODE_BAD_TEST
+ # with --fail-rerun, exit code EXITCODE_RERUN_FAIL
# on "FAILURE then SUCCESS" state.
output = self.run_tests("--rerun", "--fail-rerun", testname,
- exitcode=EXITCODE_BAD_TEST)
+ exitcode=EXITCODE_RERUN_FAIL)
self.check_executed_tests(output, [testname],
rerun=Rerun(testname,
match="test_fail_once",