sphinx/tests/test_util_docutils.py

35 lines
1.1 KiB
Python
Raw Normal View History

2018-02-10 06:04:30 -06:00
# -*- coding: utf-8 -*-
"""
test_util_docutils
~~~~~~~~~~~~~~~~~~
Tests util.utils functions.
:copyright: Copyright 2007-2018 by the Sphinx team, see AUTHORS.
:license: BSD, see LICENSE for details.
"""
from docutils import nodes
from sphinx.util.docutils import docutils_namespace, register_node
def test_register_node():
class custom_node(nodes.Element):
pass
with docutils_namespace():
register_node(custom_node)
# check registered
assert hasattr(nodes.GenericNodeVisitor, 'visit_custom_node')
assert hasattr(nodes.GenericNodeVisitor, 'depart_custom_node')
assert hasattr(nodes.SparseNodeVisitor, 'visit_custom_node')
assert hasattr(nodes.SparseNodeVisitor, 'depart_custom_node')
# check unregistered outside namespace
assert not hasattr(nodes.GenericNodeVisitor, 'visit_custom_node')
assert not hasattr(nodes.GenericNodeVisitor, 'depart_custom_node')
assert not hasattr(nodes.SparseNodeVisitor, 'visit_custom_node')
assert not hasattr(nodes.SparseNodeVisitor, 'depart_custom_node')