/usr/lib/imh-dnskeyapi/venv/lib/python3.13/site-packages/_pytest
NameSizeModeActions
assertion/-0755rm
config/-0755rm
mark/-0755rm
_code/-0755rm
_io/-0755rm
_py/-0755rm
cacheprovider.py223730644editdlrm
capture.py353300644editdlrm
compat.py114670644editdlrm
debugging.py132600644editdlrm
deprecated.py31470644editdlrm
doctest.py262550644editdlrm
faulthandler.py36740644editdlrm
fixtures.py735500644editdlrm
freeze_support.py12910644editdlrm
helpconfig.py88950644editdlrm
hookspec.py428310644editdlrm
junitxml.py255740644editdlrm
legacypath.py165880644editdlrm
logging.py351240644editdlrm
main.py374160644editdlrm
monkeypatch.py145980644editdlrm
nodes.py264830644editdlrm
outcomes.py105320644editdlrm
pastebin.py39780644editdlrm
pathlib.py375690644editdlrm
py.typed00644editdlrm
pytester.py615520644editdlrm
pytester_assertions.py22440644editdlrm
python.py648510644editdlrm
python_api.py401220644editdlrm
python_path.py7450644editdlrm
recwarn.py132270644editdlrm
reports.py213310644editdlrm
runner.py194360644editdlrm
scope.py27980644editdlrm
setuponly.py33060644editdlrm
setupplan.py11840644editdlrm
skipping.py102170644editdlrm
stash.py30900644editdlrm
stepwise.py45960644editdlrm
terminal.py573930644editdlrm
threadexception.py30050644editdlrm
timing.py4130644editdlrm
tmpdir.py113750644editdlrm
unittest.py156140644editdlrm
unraisableexception.py32520644editdlrm
warnings.py52110644editdlrm
warning_types.py43880644editdlrm
_argcomplete.py37760644editdlrm
_version.py5110644editdlrm
__init__.py3910644editdlrm
Edit: /usr/lib/imh-dnskeyapi/venv/lib/python3.13/site-packages/_pytest/scope.py (2798B)
""" Scope definition and related utilities. Those are defined here, instead of in the 'fixtures' module because their use is spread across many other pytest modules, and centralizing it in 'fixtures' would cause circular references. Also this makes the module light to import, as it should. """ from __future__ import annotations from enum import Enum from functools import total_ordering from typing import Literal _ScopeName = Literal["session", "package", "module", "class", "function"] @total_ordering class Scope(Enum): """ Represents one of the possible fixture scopes in pytest. Scopes are ordered from lower to higher, that is: ->>> higher ->>> Function < Class < Module < Package < Session <<<- lower <<<- """ # Scopes need to be listed from lower to higher. Function: _ScopeName = "function" Class: _ScopeName = "class" Module: _ScopeName = "module" Package: _ScopeName = "package" Session: _ScopeName = "session" def next_lower(self) -> Scope: """Return the next lower scope.""" index = _SCOPE_INDICES[self] if index == 0: raise ValueError(f"{self} is the lower-most scope") return _ALL_SCOPES[index - 1] def next_higher(self) -> Scope: """Return the next higher scope.""" index = _SCOPE_INDICES[self] if index == len(_SCOPE_INDICES) - 1: raise ValueError(f"{self} is the upper-most scope") return _ALL_SCOPES[index + 1] def __lt__(self, other: Scope) -> bool: self_index = _SCOPE_INDICES[self] other_index = _SCOPE_INDICES[other] return self_index < other_index @classmethod def from_user( cls, scope_name: _ScopeName, descr: str, where: str | None = None ) -> Scope: """ Given a scope name from the user, return the equivalent Scope enum. Should be used whenever we want to convert a user provided scope name to its enum object. If the scope name is invalid, construct a user friendly message and call pytest.fail. """ from _pytest.outcomes import fail try: # Holding this reference is necessary for mypy at the moment. scope = Scope(scope_name) except ValueError: fail( "{} {}got an unexpected scope value '{}'".format( descr, f"from {where} " if where else "", scope_name ), pytrace=False, ) return scope _ALL_SCOPES = list(Scope) _SCOPE_INDICES = {scope: index for index, scope in enumerate(_ALL_SCOPES)} # Ordered list of scopes which can contain many tests (in practice all except Function). HIGH_SCOPES = [x for x in Scope if x is not Scope.Function]