2022-02-19 20:57:02 -06:00
|
|
|
"""Test the autodoc extension.
|
2020-11-14 11:22:45 -06:00
|
|
|
|
2022-02-19 20:57:02 -06:00
|
|
|
This tests mainly the Documenters; the auto directives are tested in a test
|
|
|
|
source file translated by test_build.
|
2020-11-14 11:22:45 -06:00
|
|
|
"""
|
|
|
|
|
|
|
|
import pytest
|
2020-11-20 12:04:26 -06:00
|
|
|
|
2024-03-25 05:03:44 -05:00
|
|
|
from tests.test_extensions.autodoc_util import do_autodoc
|
2020-11-14 11:22:45 -06:00
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata(app):
|
|
|
|
actual = do_autodoc(app, 'data', 'target.integer')
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: integer',
|
|
|
|
' :module: target',
|
|
|
|
' :value: 1',
|
|
|
|
'',
|
|
|
|
' documentation for the integer',
|
|
|
|
'',
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata_novalue(app):
|
2022-01-30 10:38:12 -06:00
|
|
|
options = {'no-value': None}
|
2020-11-14 11:22:45 -06:00
|
|
|
actual = do_autodoc(app, 'data', 'target.integer', options)
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: integer',
|
|
|
|
' :module: target',
|
|
|
|
'',
|
|
|
|
' documentation for the integer',
|
|
|
|
'',
|
|
|
|
]
|
2020-11-18 08:55:14 -06:00
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata_typed_variable(app):
|
|
|
|
actual = do_autodoc(app, 'data', 'target.typed_vars.attr2')
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: attr2',
|
|
|
|
' :module: target.typed_vars',
|
|
|
|
' :type: str',
|
|
|
|
'',
|
|
|
|
' attr2',
|
|
|
|
'',
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata_type_comment(app):
|
|
|
|
actual = do_autodoc(app, 'data', 'target.typed_vars.attr3')
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: attr3',
|
|
|
|
' :module: target.typed_vars',
|
|
|
|
' :type: str',
|
|
|
|
" :value: ''",
|
|
|
|
'',
|
|
|
|
' attr3',
|
|
|
|
'',
|
|
|
|
]
|
2020-11-18 07:02:04 -06:00
|
|
|
|
|
|
|
|
2020-11-27 22:47:23 -06:00
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata_GenericAlias(app):
|
|
|
|
actual = do_autodoc(app, 'data', 'target.genericalias.T')
|
2022-06-16 13:33:55 -05:00
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: T',
|
|
|
|
' :module: target.genericalias',
|
|
|
|
'',
|
|
|
|
' A list of int',
|
|
|
|
'',
|
|
|
|
' alias of :py:class:`~typing.List`\\ [:py:class:`int`]',
|
|
|
|
'',
|
|
|
|
]
|
2020-11-27 22:47:23 -06:00
|
|
|
|
|
|
|
|
2020-12-24 23:28:28 -06:00
|
|
|
@pytest.mark.sphinx('html', testroot='ext-autodoc')
|
|
|
|
def test_autodata_hide_value(app):
|
|
|
|
actual = do_autodoc(app, 'data', 'target.hide_value.SENTINEL1')
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: SENTINEL1',
|
|
|
|
' :module: target.hide_value',
|
|
|
|
'',
|
|
|
|
' docstring',
|
|
|
|
'',
|
|
|
|
' :meta hide-value:',
|
|
|
|
'',
|
|
|
|
]
|
|
|
|
|
|
|
|
actual = do_autodoc(app, 'data', 'target.hide_value.SENTINEL2')
|
|
|
|
assert list(actual) == [
|
|
|
|
'',
|
|
|
|
'.. py:data:: SENTINEL2',
|
|
|
|
' :module: target.hide_value',
|
|
|
|
'',
|
|
|
|
' :meta hide-value:',
|
|
|
|
'',
|
|
|
|
]
|