diff options
author | Victor Stinner <vstinner@python.org> | 2020-03-31 15:25:56 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-31 15:25:56 (GMT) |
commit | 01e743d704aeefd1c1825a6a96d0c766c5516fb1 (patch) | |
tree | 605343383681403f43d466e5f42f6d0acbe6c162 /Lib/test/bisect_cmd.py | |
parent | 8d84adcd736619c2ce510dff1e7ffd3ab08df06a (diff) | |
download | cpython-01e743d704aeefd1c1825a6a96d0c766c5516fb1.zip cpython-01e743d704aeefd1c1825a6a96d0c766c5516fb1.tar.gz cpython-01e743d704aeefd1c1825a6a96d0c766c5516fb1.tar.bz2 |
bpo-40003: test.bisect_cmd copies Python options (GH-19246)
test.bisect_cmd now copies Python command line options like -O or -W.
Moreover, emit a warning if test.bisect_cmd is used with
-w/--verbose2 option.
Diffstat (limited to 'Lib/test/bisect_cmd.py')
-rwxr-xr-x | Lib/test/bisect_cmd.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/Lib/test/bisect_cmd.py b/Lib/test/bisect_cmd.py index cb06480..0bdd7a4 100755 --- a/Lib/test/bisect_cmd.py +++ b/Lib/test/bisect_cmd.py @@ -47,8 +47,16 @@ def format_shell_args(args): return ' '.join(args) +def python_cmd(): + cmd = [sys.executable] + cmd.extend(subprocess._args_from_interpreter_flags()) + cmd.extend(subprocess._optim_args_from_interpreter_flags()) + return cmd + + def list_cases(args): - cmd = [sys.executable, '-m', 'test', '--list-cases'] + cmd = python_cmd() + cmd.extend(['-m', 'test', '--list-cases']) cmd.extend(args.test_args) proc = subprocess.run(cmd, stdout=subprocess.PIPE, @@ -68,7 +76,8 @@ def run_tests(args, tests, huntrleaks=None): try: write_tests(tmp, tests) - cmd = [sys.executable, '-m', 'test', '--matchfile', tmp] + cmd = python_cmd() + cmd.extend(['-m', 'test', '--matchfile', tmp]) cmd.extend(args.test_args) print("+ %s" % format_shell_args(cmd)) proc = subprocess.run(cmd) @@ -100,6 +109,9 @@ def parse_args(): def main(): args = parse_args() + if '-w' in args.test_args or '--verbose2' in args.test_args: + print("WARNING: -w/--verbose2 option should not be used to bisect!") + print() if args.input: with open(args.input) as fp: |