Skip to content

Commit 62881a7

Browse files
authored
pythongh-109566: regrtest doesn't enable --rerun if --python is used (python#109969)
regrtest: --fast-ci and --slow-ci options no longer enable --rerun if the --python option is used.
1 parent d9809e8 commit 62881a7

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

Lib/test/libregrtest/cmdline.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -420,7 +420,8 @@ def _parse_args(args, **kwargs):
420420
ns.randomize = True
421421
ns.fail_env_changed = True
422422
ns.fail_rerun = True
423-
ns.rerun = True
423+
if ns.python is None:
424+
ns.rerun = True
424425
ns.print_slow = True
425426
ns.verbose3 = True
426427
if MS_WINDOWS:

Lib/test/test_regrtest.py

+10-2
Original file line numberDiff line numberDiff line change
@@ -374,7 +374,7 @@ def test_unknown_option(self):
374374
self.checkError(['--unknown-option'],
375375
'unrecognized arguments: --unknown-option')
376376

377-
def check_ci_mode(self, args, use_resources):
377+
def check_ci_mode(self, args, use_resources, rerun=True):
378378
ns = cmdline._parse_args(args)
379379
if utils.MS_WINDOWS:
380380
self.assertTrue(ns.nowindows)
@@ -383,7 +383,7 @@ def check_ci_mode(self, args, use_resources):
383383
# which has an unclear API
384384
regrtest = main.Regrtest(ns)
385385
self.assertEqual(regrtest.num_workers, -1)
386-
self.assertTrue(regrtest.want_rerun)
386+
self.assertEqual(regrtest.want_rerun, rerun)
387387
self.assertTrue(regrtest.randomize)
388388
self.assertIsNone(regrtest.random_seed)
389389
self.assertTrue(regrtest.fail_env_changed)
@@ -400,6 +400,14 @@ def test_fast_ci(self):
400400
regrtest = self.check_ci_mode(args, use_resources)
401401
self.assertEqual(regrtest.timeout, 10 * 60)
402402

403+
def test_fast_ci_python_cmd(self):
404+
args = ['--fast-ci', '--python', 'python -X dev']
405+
use_resources = sorted(cmdline.ALL_RESOURCES)
406+
use_resources.remove('cpu')
407+
regrtest = self.check_ci_mode(args, use_resources, rerun=False)
408+
self.assertEqual(regrtest.timeout, 10 * 60)
409+
self.assertEqual(regrtest.python_cmd, ('python', '-X', 'dev'))
410+
403411
def test_fast_ci_resource(self):
404412
# it should be possible to override resources
405413
args = ['--fast-ci', '-u', 'network']

0 commit comments

Comments
 (0)