Source code for tox.hookspecs
""" Hook specifications for tox.
"""
from pluggy import HookspecMarker, HookimplMarker
hookspec = HookspecMarker("tox")
hookimpl = HookimplMarker("tox")
@hookspec
[docs]def tox_addoption(parser):
""" add command line options to the argparse-style parser object."""
@hookspec
@hookspec(firstresult=True)
[docs]def tox_get_python_executable(envconfig):
""" return a python executable for the given python base name.
The first plugin/hook which returns an executable path will determine it.
``envconfig`` is the testenv configuration which contains
per-testenv configuration, notably the ``.envname`` and ``.basepython``
setting.
"""
@hookspec
[docs]def tox_testenv_create(venv, action):
""" [experimental] perform creation action for this venv.
"""
@hookspec
[docs]def tox_testenv_install_deps(venv, action):
""" [experimental] perform install dependencies action for this venv. """
@hookspec
[docs]def tox_runtest_pre(venv):
""" [experimental] perform arbitrary action before running tests for this venv.
This could be used to indicate that tests for a given venv have started, for instance.
"""
@hookspec
[docs]def tox_runtest_post(venv):
""" [experimental] perform arbitrary action after running tests for this venv.
This could be used to have per-venv test reporting of pass/fail status.
"""