doc: add list of fixtures to start of fixture chapter (#6696)
- Add list of fixtures to start of fixture chapter - Add "fixture" cross ref type
This commit is contained in:
parent
478a244f5e
commit
eeebcd77dd
1
AUTHORS
1
AUTHORS
|
@ -145,6 +145,7 @@ Joshua Bronson
|
||||||
Jurko Gospodnetić
|
Jurko Gospodnetić
|
||||||
Justyna Janczyszyn
|
Justyna Janczyszyn
|
||||||
Kale Kundert
|
Kale Kundert
|
||||||
|
Karl O. Pinc
|
||||||
Katarzyna Jachim
|
Katarzyna Jachim
|
||||||
Katerina Koukiou
|
Katerina Koukiou
|
||||||
Kevin Cox
|
Kevin Cox
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Add list of fixtures to start of fixture chapter.
|
|
@ -251,7 +251,7 @@ the cache and nothing will be printed:
|
||||||
test_caching.py:20: AssertionError
|
test_caching.py:20: AssertionError
|
||||||
1 failed in 0.12s
|
1 failed in 0.12s
|
||||||
|
|
||||||
See the :ref:`cache-api` for more details.
|
See the :fixture:`cache-api` for more details.
|
||||||
|
|
||||||
|
|
||||||
Inspecting Cache content
|
Inspecting Cache content
|
||||||
|
|
|
@ -180,7 +180,7 @@ Features
|
||||||
rather than implicitly.
|
rather than implicitly.
|
||||||
|
|
||||||
|
|
||||||
- `#5914 <https://github.com/pytest-dev/pytest/issues/5914>`_: :ref:`testdir` learned two new functions, :py:func:`~_pytest.pytester.LineMatcher.no_fnmatch_line` and
|
- `#5914 <https://github.com/pytest-dev/pytest/issues/5914>`_: :fixture:`testdir` learned two new functions, :py:func:`~_pytest.pytester.LineMatcher.no_fnmatch_line` and
|
||||||
:py:func:`~_pytest.pytester.LineMatcher.no_re_match_line`.
|
:py:func:`~_pytest.pytester.LineMatcher.no_re_match_line`.
|
||||||
|
|
||||||
The functions are used to ensure the captured text *does not* match the given
|
The functions are used to ensure the captured text *does not* match the given
|
||||||
|
|
|
@ -373,10 +373,18 @@ def configure_logging(app: "sphinx.application.Sphinx") -> None:
|
||||||
def setup(app: "sphinx.application.Sphinx") -> None:
|
def setup(app: "sphinx.application.Sphinx") -> None:
|
||||||
# from sphinx.ext.autodoc import cut_lines
|
# from sphinx.ext.autodoc import cut_lines
|
||||||
# app.connect('autodoc-process-docstring', cut_lines(4, what=['module']))
|
# app.connect('autodoc-process-docstring', cut_lines(4, what=['module']))
|
||||||
|
app.add_crossref_type(
|
||||||
|
"fixture",
|
||||||
|
"fixture",
|
||||||
|
objname="built-in fixture",
|
||||||
|
indextemplate="pair: %s; fixture",
|
||||||
|
)
|
||||||
|
|
||||||
app.add_object_type(
|
app.add_object_type(
|
||||||
"confval",
|
"confval",
|
||||||
"confval",
|
"confval",
|
||||||
objname="configuration value",
|
objname="configuration value",
|
||||||
indextemplate="pair: %s; configuration value",
|
indextemplate="pair: %s; configuration value",
|
||||||
)
|
)
|
||||||
|
|
||||||
configure_logging(app)
|
configure_logging(app)
|
||||||
|
|
|
@ -40,6 +40,74 @@ both styles, moving incrementally from classic to new style, as you
|
||||||
prefer. You can also start out from existing :ref:`unittest.TestCase
|
prefer. You can also start out from existing :ref:`unittest.TestCase
|
||||||
style <unittest.TestCase>` or :ref:`nose based <nosestyle>` projects.
|
style <unittest.TestCase>` or :ref:`nose based <nosestyle>` projects.
|
||||||
|
|
||||||
|
:ref:`Fixtures <fixtures-api>` are defined using the
|
||||||
|
:ref:`@pytest.fixture <pytest.fixture-api>` decorator, :ref:`described
|
||||||
|
below <funcargs>`. Pytest has useful built-in fixtures, listed here
|
||||||
|
for reference:
|
||||||
|
|
||||||
|
:fixture:`capfd`
|
||||||
|
Capture, as text, output to file descriptors ``1`` and ``2``.
|
||||||
|
|
||||||
|
:fixture:`capfdbinary`
|
||||||
|
Capture, as bytes, output to file descriptors ``1`` and ``2``.
|
||||||
|
|
||||||
|
:fixture:`caplog`
|
||||||
|
Control logging and access log entries.
|
||||||
|
|
||||||
|
:fixture:`capsys`
|
||||||
|
Capture, as text, output to ``sys.stdout`` and ``sys.stderr``.
|
||||||
|
|
||||||
|
:fixture:`capsysbinary`
|
||||||
|
Capture, as bytes, output to ``sys.stdout`` and ``sys.stderr``.
|
||||||
|
|
||||||
|
:fixture:`cache`
|
||||||
|
Store and retrieve values across pytest runs.
|
||||||
|
|
||||||
|
:fixture:`doctest_namespace`
|
||||||
|
Provide a dict injected into the docstests namespace.
|
||||||
|
|
||||||
|
:fixture:`monkeypatch`
|
||||||
|
Temporarily modify classes, functions, dictionaries,
|
||||||
|
``os.environ``, and other objects.
|
||||||
|
|
||||||
|
:fixture:`pytestconfig`
|
||||||
|
Access to configuration values, pluginmanager and plugin hooks.
|
||||||
|
|
||||||
|
:fixture:`record_property`
|
||||||
|
Add extra properties to the test.
|
||||||
|
|
||||||
|
:fixture:`record_testsuite_property`
|
||||||
|
Add extra properties to the test suite.
|
||||||
|
|
||||||
|
:fixture:`recwarn`
|
||||||
|
Record warnings emitted by test functions.
|
||||||
|
|
||||||
|
:fixture:`request`
|
||||||
|
Provide information on the executing test function.
|
||||||
|
|
||||||
|
:fixture:`testdir`
|
||||||
|
Provide a temporary test directory to aid in running, and
|
||||||
|
testing, pytest plugins.
|
||||||
|
|
||||||
|
:fixture:`tmp_path`
|
||||||
|
Provide a :class:`pathlib.Path` object to a temporary directory
|
||||||
|
which is unique to each test function.
|
||||||
|
|
||||||
|
:fixture:`tmp_path_factory`
|
||||||
|
Make session-scoped temporary directories and return
|
||||||
|
:class:`pathlib.Path` objects.
|
||||||
|
|
||||||
|
:fixture:`tmpdir`
|
||||||
|
Provide a :class:`py.path.local` object to a temporary
|
||||||
|
directory which is unique to each test function;
|
||||||
|
replaced by :fixture:`tmp_path`.
|
||||||
|
|
||||||
|
.. _`py.path.local`: https://py.readthedocs.io/en/latest/path.html
|
||||||
|
|
||||||
|
:fixture:`tmpdir_factory`
|
||||||
|
Make session-scoped temporary directories and return
|
||||||
|
:class:`py.path.local` objects;
|
||||||
|
replaced by :fixture:`tmp_path_factory`.
|
||||||
|
|
||||||
.. _`funcargs`:
|
.. _`funcargs`:
|
||||||
.. _`funcarg mechanism`:
|
.. _`funcarg mechanism`:
|
||||||
|
|
|
@ -243,6 +243,8 @@ Will create and attach a :class:`Mark <_pytest.mark.structures.Mark>` object to
|
||||||
mark.kwargs == {"method": "thread"}
|
mark.kwargs == {"method": "thread"}
|
||||||
|
|
||||||
|
|
||||||
|
.. _`fixtures-api`:
|
||||||
|
|
||||||
Fixtures
|
Fixtures
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
@ -273,6 +275,8 @@ Example of a fixture requiring another fixture:
|
||||||
For more details, consult the full :ref:`fixtures docs <fixture>`.
|
For more details, consult the full :ref:`fixtures docs <fixture>`.
|
||||||
|
|
||||||
|
|
||||||
|
.. _`pytest.fixture-api`:
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -280,7 +284,7 @@ For more details, consult the full :ref:`fixtures docs <fixture>`.
|
||||||
:decorator:
|
:decorator:
|
||||||
|
|
||||||
|
|
||||||
.. _`cache-api`:
|
.. fixture:: cache
|
||||||
|
|
||||||
config.cache
|
config.cache
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
|
@ -301,6 +305,8 @@ Under the hood, the cache plugin uses the simple
|
||||||
.. automethod:: Cache.makedir
|
.. automethod:: Cache.makedir
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: capsys
|
||||||
|
|
||||||
capsys
|
capsys
|
||||||
~~~~~~
|
~~~~~~
|
||||||
|
|
||||||
|
@ -326,6 +332,8 @@ capsys
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: capsysbinary
|
||||||
|
|
||||||
capsysbinary
|
capsysbinary
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -346,6 +354,8 @@ capsysbinary
|
||||||
assert captured.out == b"hello\n"
|
assert captured.out == b"hello\n"
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: capfd
|
||||||
|
|
||||||
capfd
|
capfd
|
||||||
~~~~~~
|
~~~~~~
|
||||||
|
|
||||||
|
@ -366,6 +376,8 @@ capfd
|
||||||
assert captured.out == "hello\n"
|
assert captured.out == "hello\n"
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: capfdbinary
|
||||||
|
|
||||||
capfdbinary
|
capfdbinary
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -386,6 +398,8 @@ capfdbinary
|
||||||
assert captured.out == b"hello\n"
|
assert captured.out == b"hello\n"
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: doctest_namespace
|
||||||
|
|
||||||
doctest_namespace
|
doctest_namespace
|
||||||
~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -404,6 +418,8 @@ doctest_namespace
|
||||||
For more details: :ref:`doctest_namespace`.
|
For more details: :ref:`doctest_namespace`.
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: request
|
||||||
|
|
||||||
request
|
request
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
|
@ -415,12 +431,16 @@ The ``request`` fixture is a special fixture providing information of the reques
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: pytestconfig
|
||||||
|
|
||||||
pytestconfig
|
pytestconfig
|
||||||
~~~~~~~~~~~~
|
~~~~~~~~~~~~
|
||||||
|
|
||||||
.. autofunction:: _pytest.fixtures.pytestconfig()
|
.. autofunction:: _pytest.fixtures.pytestconfig()
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: record_property
|
||||||
|
|
||||||
record_property
|
record_property
|
||||||
~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -429,6 +449,8 @@ record_property
|
||||||
.. autofunction:: _pytest.junitxml.record_property()
|
.. autofunction:: _pytest.junitxml.record_property()
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: record_testsuite_property
|
||||||
|
|
||||||
record_testsuite_property
|
record_testsuite_property
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -436,6 +458,9 @@ record_testsuite_property
|
||||||
|
|
||||||
.. autofunction:: _pytest.junitxml.record_testsuite_property()
|
.. autofunction:: _pytest.junitxml.record_testsuite_property()
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: caplog
|
||||||
|
|
||||||
caplog
|
caplog
|
||||||
~~~~~~
|
~~~~~~
|
||||||
|
|
||||||
|
@ -450,6 +475,8 @@ caplog
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: monkeypatch
|
||||||
|
|
||||||
monkeypatch
|
monkeypatch
|
||||||
~~~~~~~~~~~
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -465,7 +492,8 @@ monkeypatch
|
||||||
.. autoclass:: _pytest.monkeypatch.MonkeyPatch
|
.. autoclass:: _pytest.monkeypatch.MonkeyPatch
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. _testdir:
|
|
||||||
|
.. fixture:: testdir
|
||||||
|
|
||||||
testdir
|
testdir
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
@ -493,6 +521,8 @@ To use it, include in your top-most ``conftest.py`` file:
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: recwarn
|
||||||
|
|
||||||
recwarn
|
recwarn
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
|
|
||||||
|
@ -516,6 +546,8 @@ Each recorded warning is an instance of :class:`warnings.WarningMessage`.
|
||||||
differently; see :ref:`ensuring_function_triggers`.
|
differently; see :ref:`ensuring_function_triggers`.
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: tmp_path
|
||||||
|
|
||||||
tmp_path
|
tmp_path
|
||||||
~~~~~~~~
|
~~~~~~~~
|
||||||
|
|
||||||
|
@ -527,6 +559,8 @@ tmp_path
|
||||||
:no-auto-options:
|
:no-auto-options:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: tmp_path_factory
|
||||||
|
|
||||||
tmp_path_factory
|
tmp_path_factory
|
||||||
~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@ -542,6 +576,8 @@ tmp_path_factory
|
||||||
.. automethod:: TempPathFactory.getbasetemp
|
.. automethod:: TempPathFactory.getbasetemp
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: tmpdir
|
||||||
|
|
||||||
tmpdir
|
tmpdir
|
||||||
~~~~~~
|
~~~~~~
|
||||||
|
|
||||||
|
@ -553,6 +589,8 @@ tmpdir
|
||||||
:no-auto-options:
|
:no-auto-options:
|
||||||
|
|
||||||
|
|
||||||
|
.. fixture:: tmpdir_factory
|
||||||
|
|
||||||
tmpdir_factory
|
tmpdir_factory
|
||||||
~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue