parent
							
								
									a53abe93d8
								
							
						
					
					
						commit
						b0aa870b11
					
				| 
						 | 
					@ -16,6 +16,8 @@ The newly-exported types are:
 | 
				
			||||||
- ``pytest.RecordedHookCall`` for the :class:`RecordedHookCall <pytest.HookRecorder>` type returned from :class:`~pytest.HookRecorder`.
 | 
					- ``pytest.RecordedHookCall`` for the :class:`RecordedHookCall <pytest.HookRecorder>` type returned from :class:`~pytest.HookRecorder`.
 | 
				
			||||||
- ``pytest.RunResult`` for the :class:`RunResult <pytest.RunResult>` type returned from :class:`~pytest.Pytester`.
 | 
					- ``pytest.RunResult`` for the :class:`RunResult <pytest.RunResult>` type returned from :class:`~pytest.Pytester`.
 | 
				
			||||||
- ``pytest.LineMatcher`` for the :class:`LineMatcher <pytest.RunResult>` type used in :class:`~pytest.RunResult` and others.
 | 
					- ``pytest.LineMatcher`` for the :class:`LineMatcher <pytest.RunResult>` type used in :class:`~pytest.RunResult` and others.
 | 
				
			||||||
 | 
					- ``pytest.TestReport`` for the :class:`TestReport <pytest.TestReport>` type used in various hooks.
 | 
				
			||||||
 | 
					- ``pytest.CollectReport`` for the :class:`CollectReport <pytest.CollectReport>` type used in various hooks.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Constructing most of them directly is not supported; they are only meant for use in type annotations.
 | 
					Constructing most of them directly is not supported; they are only meant for use in type annotations.
 | 
				
			||||||
Doing so will emit a deprecation warning, and may become a hard-error in pytest 8.0.
 | 
					Doing so will emit a deprecation warning, and may become a hard-error in pytest 8.0.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -813,7 +813,7 @@ Collector
 | 
				
			||||||
CollectReport
 | 
					CollectReport
 | 
				
			||||||
~~~~~~~~~~~~~
 | 
					~~~~~~~~~~~~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.. autoclass:: _pytest.reports.CollectReport()
 | 
					.. autoclass:: pytest.CollectReport()
 | 
				
			||||||
    :members:
 | 
					    :members:
 | 
				
			||||||
    :show-inheritance:
 | 
					    :show-inheritance:
 | 
				
			||||||
    :inherited-members:
 | 
					    :inherited-members:
 | 
				
			||||||
| 
						 | 
					@ -951,7 +951,7 @@ Session
 | 
				
			||||||
TestReport
 | 
					TestReport
 | 
				
			||||||
~~~~~~~~~~
 | 
					~~~~~~~~~~
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.. autoclass:: _pytest.reports.TestReport()
 | 
					.. autoclass:: pytest.TestReport()
 | 
				
			||||||
    :members:
 | 
					    :members:
 | 
				
			||||||
    :show-inheritance:
 | 
					    :show-inheritance:
 | 
				
			||||||
    :inherited-members:
 | 
					    :inherited-members:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -323,7 +323,8 @@ def pytest_deselected(items: Sequence["Item"]) -> None:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@hookspec(firstresult=True)
 | 
					@hookspec(firstresult=True)
 | 
				
			||||||
def pytest_make_collect_report(collector: "Collector") -> "Optional[CollectReport]":
 | 
					def pytest_make_collect_report(collector: "Collector") -> "Optional[CollectReport]":
 | 
				
			||||||
    """Perform ``collector.collect()`` and return a CollectReport.
 | 
					    """Perform :func:`collector.collect() <pytest.Collector.collect>` and return
 | 
				
			||||||
 | 
					    a :class:`~pytest.CollectReport`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Stops at first non-None result, see :ref:`firstresult`.
 | 
					    Stops at first non-None result, see :ref:`firstresult`.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
| 
						 | 
					@ -522,19 +523,19 @@ def pytest_runtest_teardown(item: "Item", nextitem: Optional["Item"]) -> None:
 | 
				
			||||||
def pytest_runtest_makereport(
 | 
					def pytest_runtest_makereport(
 | 
				
			||||||
    item: "Item", call: "CallInfo[None]"
 | 
					    item: "Item", call: "CallInfo[None]"
 | 
				
			||||||
) -> Optional["TestReport"]:
 | 
					) -> Optional["TestReport"]:
 | 
				
			||||||
    """Called to create a :py:class:`_pytest.reports.TestReport` for each of
 | 
					    """Called to create a :class:`~pytest.TestReport` for each of
 | 
				
			||||||
    the setup, call and teardown runtest phases of a test item.
 | 
					    the setup, call and teardown runtest phases of a test item.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    See :func:`pytest_runtest_protocol` for a description of the runtest protocol.
 | 
					    See :func:`pytest_runtest_protocol` for a description of the runtest protocol.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    :param CallInfo[None] call: The ``CallInfo`` for the phase.
 | 
					    :param call: The :class:`~pytest.CallInfo` for the phase.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Stops at first non-None result, see :ref:`firstresult`.
 | 
					    Stops at first non-None result, see :ref:`firstresult`.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def pytest_runtest_logreport(report: "TestReport") -> None:
 | 
					def pytest_runtest_logreport(report: "TestReport") -> None:
 | 
				
			||||||
    """Process the :py:class:`_pytest.reports.TestReport` produced for each
 | 
					    """Process the :class:`~pytest.TestReport` produced for each
 | 
				
			||||||
    of the setup, call and teardown runtest phases of an item.
 | 
					    of the setup, call and teardown runtest phases of an item.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    See :func:`pytest_runtest_protocol` for a description of the runtest protocol.
 | 
					    See :func:`pytest_runtest_protocol` for a description of the runtest protocol.
 | 
				
			||||||
| 
						 | 
					@ -555,7 +556,8 @@ def pytest_report_from_serializable(
 | 
				
			||||||
    config: "Config",
 | 
					    config: "Config",
 | 
				
			||||||
    data: Dict[str, Any],
 | 
					    data: Dict[str, Any],
 | 
				
			||||||
) -> Optional[Union["CollectReport", "TestReport"]]:
 | 
					) -> Optional[Union["CollectReport", "TestReport"]]:
 | 
				
			||||||
    """Restore a report object previously serialized with pytest_report_to_serializable()."""
 | 
					    """Restore a report object previously serialized with
 | 
				
			||||||
 | 
					    :func:`pytest_report_to_serializable`."""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# -------------------------------------------------------------------------
 | 
					# -------------------------------------------------------------------------
 | 
				
			||||||
| 
						 | 
					@ -753,7 +755,7 @@ def pytest_report_teststatus(
 | 
				
			||||||
    for example ``"rerun", "R", ("RERUN", {"yellow": True})``.
 | 
					    for example ``"rerun", "R", ("RERUN", {"yellow": True})``.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    :param report: The report object whose status is to be returned.
 | 
					    :param report: The report object whose status is to be returned.
 | 
				
			||||||
    :param pytest.Config config: The pytest config object.
 | 
					    :param config: The pytest config object.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Stops at first non-None result, see :ref:`firstresult`.
 | 
					    Stops at first non-None result, see :ref:`firstresult`.
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
| 
						 | 
					@ -894,10 +896,10 @@ def pytest_exception_interact(
 | 
				
			||||||
    interactively handled.
 | 
					    interactively handled.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    May be called during collection (see :py:func:`pytest_make_collect_report`),
 | 
					    May be called during collection (see :py:func:`pytest_make_collect_report`),
 | 
				
			||||||
    in which case ``report`` is a :py:class:`_pytest.reports.CollectReport`.
 | 
					    in which case ``report`` is a :class:`CollectReport`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    May be called during runtest of an item (see :py:func:`pytest_runtest_protocol`),
 | 
					    May be called during runtest of an item (see :py:func:`pytest_runtest_protocol`),
 | 
				
			||||||
    in which case ``report`` is a :py:class:`_pytest.reports.TestReport`.
 | 
					    in which case ``report`` is a :class:`TestReport`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    This hook is not called if the exception that was raised is an internal
 | 
					    This hook is not called if the exception that was raised is an internal
 | 
				
			||||||
    exception like ``skip.Exception``.
 | 
					    exception like ``skip.Exception``.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -143,18 +143,22 @@ class BaseReport:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def passed(self) -> bool:
 | 
					    def passed(self) -> bool:
 | 
				
			||||||
 | 
					        """Whether the outcome is passed."""
 | 
				
			||||||
        return self.outcome == "passed"
 | 
					        return self.outcome == "passed"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def failed(self) -> bool:
 | 
					    def failed(self) -> bool:
 | 
				
			||||||
 | 
					        """Whether the outcome is failed."""
 | 
				
			||||||
        return self.outcome == "failed"
 | 
					        return self.outcome == "failed"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def skipped(self) -> bool:
 | 
					    def skipped(self) -> bool:
 | 
				
			||||||
 | 
					        """Whether the outcome is skipped."""
 | 
				
			||||||
        return self.outcome == "skipped"
 | 
					        return self.outcome == "skipped"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def fspath(self) -> str:
 | 
					    def fspath(self) -> str:
 | 
				
			||||||
 | 
					        """The path portion of the reported node, as a string."""
 | 
				
			||||||
        return self.nodeid.split("::")[0]
 | 
					        return self.nodeid.split("::")[0]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
| 
						 | 
					@ -237,7 +241,10 @@ def _report_unserialization_failure(
 | 
				
			||||||
@final
 | 
					@final
 | 
				
			||||||
class TestReport(BaseReport):
 | 
					class TestReport(BaseReport):
 | 
				
			||||||
    """Basic test report object (also used for setup and teardown calls if
 | 
					    """Basic test report object (also used for setup and teardown calls if
 | 
				
			||||||
    they fail)."""
 | 
					    they fail).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Reports can contain arbitrary extra attributes.
 | 
				
			||||||
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    __test__ = False
 | 
					    __test__ = False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -354,7 +361,10 @@ class TestReport(BaseReport):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@final
 | 
					@final
 | 
				
			||||||
class CollectReport(BaseReport):
 | 
					class CollectReport(BaseReport):
 | 
				
			||||||
    """Collection report object."""
 | 
					    """Collection report object.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Reports can contain arbitrary extra attributes.
 | 
				
			||||||
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    when = "collect"
 | 
					    when = "collect"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -57,6 +57,8 @@ from _pytest.python_api import raises
 | 
				
			||||||
from _pytest.recwarn import deprecated_call
 | 
					from _pytest.recwarn import deprecated_call
 | 
				
			||||||
from _pytest.recwarn import WarningsRecorder
 | 
					from _pytest.recwarn import WarningsRecorder
 | 
				
			||||||
from _pytest.recwarn import warns
 | 
					from _pytest.recwarn import warns
 | 
				
			||||||
 | 
					from _pytest.reports import CollectReport
 | 
				
			||||||
 | 
					from _pytest.reports import TestReport
 | 
				
			||||||
from _pytest.runner import CallInfo
 | 
					from _pytest.runner import CallInfo
 | 
				
			||||||
from _pytest.stash import Stash
 | 
					from _pytest.stash import Stash
 | 
				
			||||||
from _pytest.stash import StashKey
 | 
					from _pytest.stash import StashKey
 | 
				
			||||||
| 
						 | 
					@ -86,6 +88,7 @@ __all__ = [
 | 
				
			||||||
    "cmdline",
 | 
					    "cmdline",
 | 
				
			||||||
    "collect",
 | 
					    "collect",
 | 
				
			||||||
    "Collector",
 | 
					    "Collector",
 | 
				
			||||||
 | 
					    "CollectReport",
 | 
				
			||||||
    "Config",
 | 
					    "Config",
 | 
				
			||||||
    "console_main",
 | 
					    "console_main",
 | 
				
			||||||
    "deprecated_call",
 | 
					    "deprecated_call",
 | 
				
			||||||
| 
						 | 
					@ -143,6 +146,7 @@ __all__ = [
 | 
				
			||||||
    "StashKey",
 | 
					    "StashKey",
 | 
				
			||||||
    "version_tuple",
 | 
					    "version_tuple",
 | 
				
			||||||
    "TempPathFactory",
 | 
					    "TempPathFactory",
 | 
				
			||||||
 | 
					    "TestReport",
 | 
				
			||||||
    "UsageError",
 | 
					    "UsageError",
 | 
				
			||||||
    "WarningsRecorder",
 | 
					    "WarningsRecorder",
 | 
				
			||||||
    "warns",
 | 
					    "warns",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue