Alexander Hess
01d270e39c
- use xdoctest to validate code snippets in docstrings - make xdoctest part of the nox session "test" via the new `test_docstrings()` test case - add nox session "test-docstrings" for convenience; also, `xdoctest.doctest_module()` does not discover docstrings that are imported at the root of the package => each new module with docstrings must be added to `test_docstrings()` by hand, which is likely forgotten => the nox session "test-docstrings" should run on CI
23 lines
533 B
Python
23 lines
533 B
Python
"""Integrate `xdoctest` into the test suite.
|
|
|
|
Ensure all code snippets in docstrings are valid and functioning code.
|
|
|
|
Important: All modules with docstrings containing code snippets
|
|
must be put on the parameter list below by hand!
|
|
"""
|
|
|
|
import pytest
|
|
import xdoctest
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"module",
|
|
[
|
|
"lalib",
|
|
],
|
|
)
|
|
def test_docstrings(module):
|
|
"""Test code snippets within the package with `xdoctest`."""
|
|
result = xdoctest.doctest_module(module, "all")
|
|
|
|
assert result["n_failed"] == 0
|