mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
31 lines
966 B
Python
31 lines
966 B
Python
"""Test sphinx.extension module."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import pytest
|
|
|
|
from sphinx.errors import VersionRequirementError
|
|
from sphinx.extension import Extension, verify_needs_extensions
|
|
|
|
|
|
@pytest.mark.sphinx('html', testroot='root')
|
|
def test_needs_extensions(app):
|
|
# empty needs_extensions
|
|
assert app.config.needs_extensions == {}
|
|
verify_needs_extensions(app, app.config)
|
|
|
|
# needs_extensions fulfilled
|
|
app.config.needs_extensions = {'test.extension': '3.9'}
|
|
app.extensions['test.extension'] = Extension(
|
|
'test.extension', 'test.extension', version='3.10'
|
|
)
|
|
verify_needs_extensions(app, app.config)
|
|
|
|
# needs_extensions not fulfilled
|
|
app.config.needs_extensions = {'test.extension': '3.11'}
|
|
app.extensions['test.extension'] = Extension(
|
|
'test.extension', 'test.extension', version='3.10'
|
|
)
|
|
with pytest.raises(VersionRequirementError):
|
|
verify_needs_extensions(app, app.config)
|