File: test_source_link.py

package info (click to toggle)
sphinx-toolbox 3.9.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,924 kB
  • sloc: python: 11,636; sh: 26; javascript: 25; makefile: 16
file content (38 lines) | stat: -rw-r--r-- 1,410 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 3rd party
from autodocsumm import AutoSummModuleDocumenter  # type: ignore[import-untyped]
from sphinx.events import EventListener
from sphinx.ext.autodoc import ModuleDocumenter

# this package
from sphinx_toolbox import __version__
from sphinx_toolbox.more_autodoc import sourcelink
from sphinx_toolbox.more_autosummary import PatchedAutoSummModuleDocumenter
from sphinx_toolbox.testing import run_setup
from sphinx_toolbox.utils import flag
from tests.common import get_app_config_values


def test_setup():
	setup_ret, directives, roles, additional_nodes, app = run_setup(sourcelink.setup)

	assert setup_ret == {"parallel_read_safe": True, "version": __version__}

	assert "sourcelink" in ModuleDocumenter.option_spec
	assert ModuleDocumenter.option_spec["sourcelink"] is flag

	assert "sourcelink" in AutoSummModuleDocumenter.option_spec
	assert AutoSummModuleDocumenter.option_spec["sourcelink"] is flag

	assert "sourcelink" in PatchedAutoSummModuleDocumenter.option_spec
	assert PatchedAutoSummModuleDocumenter.option_spec["sourcelink"] is flag

	assert app.events.listeners == {
			"autodoc-process-docstring": [
					EventListener(id=0, handler=sourcelink.sourcelinks_process_docstring, priority=500),
					],
			}
	assert get_app_config_values(app.config.values["autodoc_show_sourcelink"]) == (False, "env", [bool])

	assert directives == {}
	assert roles == {}
	assert additional_nodes == set()