X7ROOT File Manager
Current Path:
/opt/cloudlinux/venv/lib/python3.11/site-packages/_pytest
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
_pytest
/
??
..
??
__init__.py
(356 B)
??
__pycache__
??
_argcomplete.py
(3.71 KB)
??
_code
??
_io
??
_py
??
_version.py
(160 B)
??
assertion
??
cacheprovider.py
(20.89 KB)
??
capture.py
(33.92 KB)
??
compat.py
(12.89 KB)
??
config
??
debugging.py
(13.18 KB)
??
deprecated.py
(5.36 KB)
??
doctest.py
(25.35 KB)
??
faulthandler.py
(3.04 KB)
??
fixtures.py
(65.51 KB)
??
freeze_support.py
(1.31 KB)
??
helpconfig.py
(8.34 KB)
??
hookspec.py
(31.79 KB)
??
junitxml.py
(25.11 KB)
??
legacypath.py
(16.53 KB)
??
logging.py
(33.23 KB)
??
main.py
(31.73 KB)
??
mark
??
monkeypatch.py
(14.51 KB)
??
nodes.py
(25.94 KB)
??
nose.py
(1.65 KB)
??
outcomes.py
(10.02 KB)
??
pastebin.py
(3.86 KB)
??
pathlib.py
(25.22 KB)
??
py.typed
(0 B)
??
pytester.py
(60.52 KB)
??
pytester_assertions.py
(2.27 KB)
??
python.py
(69.49 KB)
??
python_api.py
(37.5 KB)
??
python_path.py
(709 B)
??
recwarn.py
(10.67 KB)
??
reports.py
(20.35 KB)
??
runner.py
(18.01 KB)
??
scope.py
(2.81 KB)
??
setuponly.py
(3.18 KB)
??
setupplan.py
(1.19 KB)
??
skipping.py
(9.96 KB)
??
stash.py
(2.98 KB)
??
stepwise.py
(4.6 KB)
??
terminal.py
(52.25 KB)
??
threadexception.py
(2.85 KB)
??
timing.py
(375 B)
??
tmpdir.py
(11.43 KB)
??
unittest.py
(14.46 KB)
??
unraisableexception.py
(3.12 KB)
??
warning_types.py
(4.37 KB)
??
warnings.py
(4.95 KB)
Editing: faulthandler.py
import io import os import sys from typing import Generator import pytest from _pytest.config import Config from _pytest.config.argparsing import Parser from _pytest.nodes import Item from _pytest.stash import StashKey fault_handler_stderr_fd_key = StashKey[int]() fault_handler_originally_enabled_key = StashKey[bool]() def pytest_addoption(parser: Parser) -> None: help = ( "Dump the traceback of all threads if a test takes " "more than TIMEOUT seconds to finish" ) parser.addini("faulthandler_timeout", help, default=0.0) def pytest_configure(config: Config) -> None: import faulthandler config.stash[fault_handler_stderr_fd_key] = os.dup(get_stderr_fileno()) config.stash[fault_handler_originally_enabled_key] = faulthandler.is_enabled() faulthandler.enable(file=config.stash[fault_handler_stderr_fd_key]) def pytest_unconfigure(config: Config) -> None: import faulthandler faulthandler.disable() # Close the dup file installed during pytest_configure. if fault_handler_stderr_fd_key in config.stash: os.close(config.stash[fault_handler_stderr_fd_key]) del config.stash[fault_handler_stderr_fd_key] if config.stash.get(fault_handler_originally_enabled_key, False): # Re-enable the faulthandler if it was originally enabled. faulthandler.enable(file=get_stderr_fileno()) def get_stderr_fileno() -> int: try: fileno = sys.stderr.fileno() # The Twisted Logger will return an invalid file descriptor since it is not backed # by an FD. So, let's also forward this to the same code path as with pytest-xdist. if fileno == -1: raise AttributeError() return fileno except (AttributeError, io.UnsupportedOperation): # pytest-xdist monkeypatches sys.stderr with an object that is not an actual file. # https://docs.python.org/3/library/faulthandler.html#issue-with-file-descriptors # This is potentially dangerous, but the best we can do. return sys.__stderr__.fileno() def get_timeout_config_value(config: Config) -> float: return float(config.getini("faulthandler_timeout") or 0.0) @pytest.hookimpl(hookwrapper=True, trylast=True) def pytest_runtest_protocol(item: Item) -> Generator[None, None, None]: timeout = get_timeout_config_value(item.config) if timeout > 0: import faulthandler stderr = item.config.stash[fault_handler_stderr_fd_key] faulthandler.dump_traceback_later(timeout, file=stderr) try: yield finally: faulthandler.cancel_dump_traceback_later() else: yield @pytest.hookimpl(tryfirst=True) def pytest_enter_pdb() -> None: """Cancel any traceback dumping due to timeout before entering pdb.""" import faulthandler faulthandler.cancel_dump_traceback_later() @pytest.hookimpl(tryfirst=True) def pytest_exception_interact() -> None: """Cancel any traceback dumping due to an interactive exception being raised.""" import faulthandler faulthandler.cancel_dump_traceback_later()
Upload File
Create Folder