Add unit test for new env-read-docs event

This commit is contained in:
Guillem Barba 2014-09-01 09:19:43 +02:00
parent b4b15181b4
commit 24c5eb6e9c

View File

@ -0,0 +1,54 @@
# -*- coding: utf-8 -*-
"""
test_env_read_docs
~~~~~~~~~~~~~~~~~~
Test docnames read order modification using the env-read-docs event.
:copyright: Copyright 2014 by the Sphinx team, see AUTHORS.
:license: BSD, see LICENSE for details.
"""
import pickle
from docutils.parsers.rst.directives.html import MetaBody
from sphinx import addnodes
from sphinx.versioning import add_uids, merge_doctrees, get_ratio
from util import test_root, TestApp
def setup_module():
pass
def test_default_docnames_order():
"""By default, docnames are read in alphanumeric order"""
def on_env_read_docs(app, env, docnames):
return docnames
app = TestApp(srcdir='(temp)', freshenv=True)
env = app.env
app.connect('env-read-docs', on_env_read_docs)
msg, num, it = env.update(app.config, app.srcdir, app.doctreedir, app)
read_docnames = [docname for docname in it]
assert len(read_docnames) > 1 and read_docnames == sorted(read_docnames)
def test_inverse_docnames_order():
"""By default, docnames are read in alphanumeric order"""
def on_env_read_docs(app, env, docnames):
docnames.reverse()
return docnames
app = TestApp(srcdir='(temp)', freshenv=True)
env = app.env
app.connect('env-read-docs', on_env_read_docs)
msg, num, it = env.update(app.config, app.srcdir, app.doctreedir, app)
read_docnames = [docname for docname in it]
reversed_read_docnames = sorted(read_docnames)[:]
reversed_read_docnames.reverse()
assert len(read_docnames) > 1 and read_docnames == reversed_read_docnames
def teardown_module():
(test_root / '_build').rmtree(True)