mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
29 lines
872 B
Python
29 lines
872 B
Python
"""Test sphinx.util._importer."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import pytest
|
|
|
|
from sphinx.errors import ExtensionError
|
|
from sphinx.util._importer import import_object
|
|
|
|
|
|
def test_import_object():
|
|
module = import_object('sphinx')
|
|
assert module.__name__ == 'sphinx'
|
|
|
|
module = import_object('sphinx.application')
|
|
assert module.__name__ == 'sphinx.application'
|
|
|
|
obj = import_object('sphinx.application.Sphinx')
|
|
assert obj.__name__ == 'Sphinx'
|
|
|
|
with pytest.raises(ExtensionError) as exc:
|
|
import_object('sphinx.unknown_module')
|
|
assert exc.value.args[0] == 'Could not import sphinx.unknown_module'
|
|
|
|
with pytest.raises(ExtensionError) as exc:
|
|
import_object('sphinx.unknown_module', 'my extension')
|
|
expected = 'Could not import sphinx.unknown_module (needed for my extension)'
|
|
assert exc.value.args[0] == expected
|