mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
gh-110722: Make -m test -T -j
use sys.monitoring (GH-111710)
Now all results from worker processes are aggregated and displayed together as a summary at the end of a regrtest run. The traditional trace is left in place for use with sequential in-process test runs but now raises a warning that those numbers are not precise. `-T -j` requires `--with-pydebug` as it relies on `-Xpresite=`.
This commit is contained in:
parent
0b06d2482d
commit
3932b0f7b1
13 changed files with 166 additions and 34 deletions
|
@ -2,7 +2,7 @@ import argparse
|
|||
import os.path
|
||||
import shlex
|
||||
import sys
|
||||
from test.support import os_helper
|
||||
from test.support import os_helper, Py_DEBUG
|
||||
from .utils import ALL_RESOURCES, RESOURCE_NAMES
|
||||
|
||||
|
||||
|
@ -448,8 +448,16 @@ def _parse_args(args, **kwargs):
|
|||
|
||||
if ns.single and ns.fromfile:
|
||||
parser.error("-s and -f don't go together!")
|
||||
if ns.use_mp is not None and ns.trace:
|
||||
parser.error("-T and -j don't go together!")
|
||||
if ns.trace:
|
||||
if ns.use_mp is not None:
|
||||
if not Py_DEBUG:
|
||||
parser.error("need --with-pydebug to use -T and -j together")
|
||||
else:
|
||||
print(
|
||||
"Warning: collecting coverage without -j is imprecise. Configure"
|
||||
" --with-pydebug and run -m test -T -j for best results.",
|
||||
file=sys.stderr
|
||||
)
|
||||
if ns.python is not None:
|
||||
if ns.use_mp is None:
|
||||
parser.error("-p requires -j!")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue