Merge pull request #11822 from bluetech/doc-hookspec

hookspec: minor doc tweaks
This commit is contained in:
Ran Benita 2024-01-16 18:34:33 +02:00 committed by GitHub
commit a6708b9254
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 20 additions and 18 deletions

View File

@ -54,7 +54,7 @@ def pytest_addhooks(pluginmanager: "PytestPluginManager") -> None:
"""Called at plugin registration time to allow adding new hooks via a call to """Called at plugin registration time to allow adding new hooks via a call to
:func:`pluginmanager.add_hookspecs(module_or_class, prefix) <pytest.PytestPluginManager.add_hookspecs>`. :func:`pluginmanager.add_hookspecs(module_or_class, prefix) <pytest.PytestPluginManager.add_hookspecs>`.
:param pytest.PytestPluginManager pluginmanager: The pytest plugin manager. :param pluginmanager: The pytest plugin manager.
.. note:: .. note::
This hook is incompatible with hook wrappers. This hook is incompatible with hook wrappers.
@ -68,7 +68,7 @@ def pytest_plugin_registered(
"""A new pytest plugin got registered. """A new pytest plugin got registered.
:param plugin: The plugin module or instance. :param plugin: The plugin module or instance.
:param pytest.PytestPluginManager manager: pytest plugin manager. :param manager: pytest plugin manager.
.. note:: .. note::
This hook is incompatible with hook wrappers. This hook is incompatible with hook wrappers.
@ -86,13 +86,13 @@ def pytest_addoption(parser: "Parser", pluginmanager: "PytestPluginManager") ->
files situated at the tests root directory due to how pytest files situated at the tests root directory due to how pytest
:ref:`discovers plugins during startup <pluginorder>`. :ref:`discovers plugins during startup <pluginorder>`.
:param pytest.Parser parser: :param parser:
To add command line options, call To add command line options, call
:py:func:`parser.addoption(...) <pytest.Parser.addoption>`. :py:func:`parser.addoption(...) <pytest.Parser.addoption>`.
To add ini-file values call :py:func:`parser.addini(...) To add ini-file values call :py:func:`parser.addini(...)
<pytest.Parser.addini>`. <pytest.Parser.addini>`.
:param pytest.PytestPluginManager pluginmanager: :param pluginmanager:
The pytest plugin manager, which can be used to install :py:func:`~pytest.hookspec`'s The pytest plugin manager, which can be used to install :py:func:`~pytest.hookspec`'s
or :py:func:`~pytest.hookimpl`'s and allow one plugin to call another plugin's hooks or :py:func:`~pytest.hookimpl`'s and allow one plugin to call another plugin's hooks
to change how command line options are added. to change how command line options are added.
@ -127,7 +127,7 @@ def pytest_configure(config: "Config") -> None:
.. note:: .. note::
This hook is incompatible with hook wrappers. This hook is incompatible with hook wrappers.
:param pytest.Config config: The pytest config object. :param config: The pytest config object.
""" """
@ -156,18 +156,6 @@ def pytest_cmdline_parse(
""" """
@hookspec(firstresult=True)
def pytest_cmdline_main(config: "Config") -> Optional[Union["ExitCode", int]]:
"""Called for performing the main command line action. The default
implementation will invoke the configure hooks and runtest_mainloop.
Stops at first non-None result, see :ref:`firstresult`.
:param config: The pytest config object.
:returns: The exit code.
"""
def pytest_load_initial_conftests( def pytest_load_initial_conftests(
early_config: "Config", parser: "Parser", args: List[str] early_config: "Config", parser: "Parser", args: List[str]
) -> None: ) -> None:
@ -183,6 +171,20 @@ def pytest_load_initial_conftests(
""" """
@hookspec(firstresult=True)
def pytest_cmdline_main(config: "Config") -> Optional[Union["ExitCode", int]]:
"""Called for performing the main command line action.
The default implementation will invoke the configure hooks and
:hook:`pytest_runtestloop`.
Stops at first non-None result, see :ref:`firstresult`.
:param config: The pytest config object.
:returns: The exit code.
"""
# ------------------------------------------------------------------------- # -------------------------------------------------------------------------
# collection hooks # collection hooks
# ------------------------------------------------------------------------- # -------------------------------------------------------------------------
@ -435,7 +437,7 @@ def pytest_make_parametrize_id(
:param config: The pytest config object. :param config: The pytest config object.
:param val: The parametrized value. :param val: The parametrized value.
:param str argname: The automatic parameter name produced by pytest. :param argname: The automatic parameter name produced by pytest.
""" """