diff options
| author | shimizukawa <shimizukawa@gmail.com> | 2014-01-15 05:25:56 +0000 |
|---|---|---|
| committer | shimizukawa <shimizukawa@gmail.com> | 2014-01-15 05:25:56 +0000 |
| commit | f458a7f06e8f18d446fc0bf7cb397b777cf1ef1d (patch) | |
| tree | b436c36a949d036d656363ad0e24b91ca8a39a4d /tests | |
| parent | 8b375619a7a91d26f07f1ba944757700ae82827f (diff) | |
| parent | cbe7cad734728bdeee093066005c36e1598fa37e (diff) | |
| download | sphinx-f458a7f06e8f18d446fc0bf7cb397b777cf1ef1d.tar.gz | |
merge heads
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/root/includes.txt | 1 | ||||
| -rw-r--r-- | tests/root/markup.txt | 5 | ||||
| -rw-r--r-- | tests/root/objects.txt | 1 | ||||
| -rw-r--r-- | tests/roots/test-templating/_templates/autosummary/class.rst | 8 | ||||
| -rw-r--r-- | tests/roots/test-templating/_templates/layout.html | 6 | ||||
| -rw-r--r-- | tests/roots/test-templating/autosummary_templating.txt | 13 | ||||
| -rw-r--r-- | tests/roots/test-templating/conf.py | 11 | ||||
| -rw-r--r-- | tests/roots/test-templating/contents.txt | 7 | ||||
| -rw-r--r-- | tests/test_autodoc.py | 14 | ||||
| -rw-r--r-- | tests/test_build_html.py | 2 | ||||
| -rw-r--r-- | tests/test_config.py | 8 | ||||
| -rw-r--r-- | tests/test_intersphinx.py | 4 | ||||
| -rw-r--r-- | tests/test_markup.py | 2 | ||||
| -rw-r--r-- | tests/test_metadata.py | 6 | ||||
| -rw-r--r-- | tests/test_quickstart.py | 1 | ||||
| -rw-r--r-- | tests/test_templating.py | 36 |
16 files changed, 116 insertions, 9 deletions
diff --git a/tests/root/includes.txt b/tests/root/includes.txt index 904f0677..08917811 100644 --- a/tests/root/includes.txt +++ b/tests/root/includes.txt @@ -40,6 +40,7 @@ Literalinclude options .. cssclass:: inc-lines .. literalinclude:: literal.inc :lines: 6-7,9 + :lineno-start: 6 .. cssclass:: inc-startend .. literalinclude:: literal.inc diff --git a/tests/root/markup.txt b/tests/root/markup.txt index 1fb20cf0..34e8fdb8 100644 --- a/tests/root/markup.txt +++ b/tests/root/markup.txt @@ -79,6 +79,10 @@ Body directives b +.. parsed-literal:: + + with some *markup* inside + .. _admonition-section: @@ -139,6 +143,7 @@ Adding \n to test unescaping. * :doc:`subdir/includes` * ``:download:`` is tested in includes.txt * :option:`Python -c option <python -c>` +* This used to crash: :option:`Python c option` Test :abbr:`abbr (abbreviation)` and another :abbr:`abbr (abbreviation)`. diff --git a/tests/root/objects.txt b/tests/root/objects.txt index 57e82212..819c5dff 100644 --- a/tests/root/objects.txt +++ b/tests/root/objects.txt @@ -101,6 +101,7 @@ Referring to :func:`nothing <>`. :type hour: DuplicateType :param hour: Duplicate param. Should not lead to crashes. :type hour: DuplicateType + :param .Cls extcls: A class from another module. C items diff --git a/tests/roots/test-templating/_templates/autosummary/class.rst b/tests/roots/test-templating/_templates/autosummary/class.rst new file mode 100644 index 00000000..7f153617 --- /dev/null +++ b/tests/roots/test-templating/_templates/autosummary/class.rst @@ -0,0 +1,8 @@ +{% extends "!autosummary/class.rst" %} + +{% block methods %} + + .. note:: autosummary/class.rst method block overloading + + {{ super() }} +{% endblock %} diff --git a/tests/roots/test-templating/_templates/layout.html b/tests/roots/test-templating/_templates/layout.html new file mode 100644 index 00000000..f836c773 --- /dev/null +++ b/tests/roots/test-templating/_templates/layout.html @@ -0,0 +1,6 @@ +{% extends "!layout.html" %} + +{% block extrahead %} +<!-- layout overloading --> +{{ super() }} +{% endblock %} diff --git a/tests/roots/test-templating/autosummary_templating.txt b/tests/roots/test-templating/autosummary_templating.txt new file mode 100644 index 00000000..05643a02 --- /dev/null +++ b/tests/roots/test-templating/autosummary_templating.txt @@ -0,0 +1,13 @@ +Autosummary templating test +=========================== + +.. autosummary:: + :toctree: generated + + sphinx.application.Sphinx + +.. currentmodule:: sphinx.application + +.. autoclass:: TemplateBridge + + .. automethod:: render diff --git a/tests/roots/test-templating/conf.py b/tests/roots/test-templating/conf.py new file mode 100644 index 00000000..225da82e --- /dev/null +++ b/tests/roots/test-templating/conf.py @@ -0,0 +1,11 @@ +# -*- coding: utf-8 -*- + +project = 'Sphinx templating <Tests>' +source_suffix = '.txt' +keep_warnings = True +templates_path = ['_templates'] +release = version = '2013.120' + +extensions = ['sphinx.ext.autosummary'] +autosummary_generate = ['autosummary_templating'] + diff --git a/tests/roots/test-templating/contents.txt b/tests/roots/test-templating/contents.txt new file mode 100644 index 00000000..04a40e21 --- /dev/null +++ b/tests/roots/test-templating/contents.txt @@ -0,0 +1,7 @@ +Welcome to Sphinx Tests's documentation! +======================================== + +.. toctree:: + + autosummary_templating + diff --git a/tests/test_autodoc.py b/tests/test_autodoc.py index 7e60c5fb..82eb0f71 100644 --- a/tests/test_autodoc.py +++ b/tests/test_autodoc.py @@ -334,6 +334,20 @@ def test_get_doc(): directive.env.config.autoclass_content = 'both' assert getdocl('class', E) == ['Class docstring', '', 'Init docstring'] + # class does not have __init__ method + class F(object): + """Class docstring""" + + # docstring in the __init__ method of base class will be discard + for f in (False, True): + directive.env.config.autodoc_docstring_signature = f + directive.env.config.autoclass_content = 'class' + assert getdocl('class', F) == ['Class docstring'] + directive.env.config.autoclass_content = 'init' + assert getdocl('class', F) == ['Class docstring'] + directive.env.config.autoclass_content = 'both' + assert getdocl('class', F) == ['Class docstring'] + @with_setup(setup_test) def test_docstring_processing(): diff --git a/tests/test_build_html.py b/tests/test_build_html.py index d5b59e42..2f34e9e4 100644 --- a/tests/test_build_html.py +++ b/tests/test_build_html.py @@ -42,6 +42,8 @@ http://www.python.org/logo.png reading included file u'.*?wrongenc.inc' seems to be wrong, try giving an \ :encoding: option\\n? %(root)s/includes.txt:4: WARNING: download file not readable: .*?nonexisting.png +%(root)s/markup.txt:\\d+: WARNING: Malformed :option: u'Python c option', does \ +not contain option marker - or -- or / %(root)s/objects.txt:\\d*: WARNING: using old C markup; please migrate to \ new-style markup \(e.g. c:function instead of cfunction\), see \ http://sphinx-doc.org/domains.html diff --git a/tests/test_config.py b/tests/test_config.py index 4d3d51b0..ea6f3ba4 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -19,7 +19,8 @@ from sphinx.util.pycompat import b @with_app(confoverrides={'master_doc': 'master', 'nonexisting_value': 'True', - 'latex_elements.docclass': 'scrartcl'}) + 'latex_elements.docclass': 'scrartcl', + 'modindex_common_prefix': 'path1,path2'}) def test_core_config(app): cfg = app.config @@ -31,6 +32,7 @@ def test_core_config(app): # overrides assert cfg.master_doc == 'master' assert cfg.latex_elements['docclass'] == 'scrartcl' + assert cfg.modindex_common_prefix == ['path1', 'path2'] # simple default values assert 'locale_dirs' not in cfg.__dict__ @@ -92,7 +94,7 @@ def test_errors_warnings(dir): write_file(dir / 'conf.py', u'# -*- coding: utf-8\n\n' u'project = u"Jägermeister"\n', 'utf-8') cfg = Config(dir, 'conf.py', {}, None) - cfg.init_values() + cfg.init_values(lambda warning: 1/0) assert cfg.project == u'Jägermeister' # test the warning for bytestrings with non-ascii content @@ -122,5 +124,5 @@ def test_config_eol(tmpdir): for eol in ('\n', '\r\n'): configfile.write_bytes(b('project = "spam"' + eol)) cfg = Config(tmpdir, 'conf.py', {}, None) - cfg.init_values() + cfg.init_values(lambda warning: 1/0) assert cfg.project == u'spam' diff --git a/tests/test_intersphinx.py b/tests/test_intersphinx.py index a8679e7e..8ce02cc1 100644 --- a/tests/test_intersphinx.py +++ b/tests/test_intersphinx.py @@ -81,7 +81,7 @@ def test_read_inventory_v2(): '/util/glossary.html#term-a-term' -@with_app(confoverrides={'extensions': 'sphinx.ext.intersphinx'}) +@with_app() @with_tempdir def test_missing_reference(tempdir, app): inv_file = tempdir / 'inventory' @@ -157,7 +157,7 @@ def test_missing_reference(tempdir, app): assert contnode[0].astext() == 'py3k:unknown' -@with_app(confoverrides={'extensions': 'sphinx.ext.intersphinx'}) +@with_app() @with_tempdir def test_load_mappings_warnings(tempdir, app): """ diff --git a/tests/test_markup.py b/tests/test_markup.py index 311222ba..f182830a 100644 --- a/tests/test_markup.py +++ b/tests/test_markup.py @@ -132,7 +132,7 @@ def test_latex_escaping(): # in verbatim code fragments yield (verify, u'::\n\n @Γ\\∞${}', None, u'\\begin{Verbatim}[commandchars=\\\\\\{\\}]\n' - u'@\\(\\Gamma\\)\\PYGZbs{}\\(\\infty\\)\\$\\PYGZob{}\\PYGZcb{}\n' + u'@\\(\\Gamma\\)\\PYGZbs{}\\(\\infty\\)\\PYGZdl{}\\PYGZob{}\\PYGZcb{}\n' u'\\end{Verbatim}') # in URIs yield (verify_re, u'`test <http://example.com/~me/>`_', None, diff --git a/tests/test_metadata.py b/tests/test_metadata.py index db955390..92dbe1c9 100644 --- a/tests/test_metadata.py +++ b/tests/test_metadata.py @@ -14,7 +14,7 @@ from util import TestApp -from nose.tools import assert_equals +from nose.tools import assert_equal app = env = None @@ -64,6 +64,6 @@ def test_docinfo(): } # I like this way of comparing dicts - easier to see the error. for key in exampledocinfo: - yield assert_equals, exampledocinfo.get(key), expecteddocinfo.get(key) + yield assert_equal, exampledocinfo.get(key), expecteddocinfo.get(key) # but then we still have to check for missing keys - yield assert_equals, set(expecteddocinfo.keys()), set(exampledocinfo.keys()) + yield assert_equal, set(expecteddocinfo.keys()), set(exampledocinfo.keys()) diff --git a/tests/test_quickstart.py b/tests/test_quickstart.py index 9daa7401..7323f48e 100644 --- a/tests/test_quickstart.py +++ b/tests/test_quickstart.py @@ -170,6 +170,7 @@ def test_quickstart_all_answers(tempdir): 'Author name': u'Wolfgang Schäuble & G\'Beckstein'.encode('utf-8'), 'Project version': '2.0', 'Project release': '2.0.1', + 'Project language': 'de', 'Source file suffix': '.txt', 'Name of your master document': 'contents', 'autodoc': 'y', diff --git a/tests/test_templating.py b/tests/test_templating.py new file mode 100644 index 00000000..025d6fd0 --- /dev/null +++ b/tests/test_templating.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +""" + test_templating + ~~~~~~~~~~~~~~~~ + + Test templating. + + :copyright: Copyright 2007-2013 by the Sphinx team, see AUTHORS. + :license: BSD, see LICENSE for details. +""" + +from util import test_roots, with_app + + +def teardown_module(): + (test_roots / 'test-templating' / '_build').rmtree(True), + + +@with_app(buildername='html', srcdir=(test_roots / 'test-templating')) +def test_layout_overloading(app): + app.builder.build_all() + + result = (app.outdir / 'contents.html').text(encoding='utf-8') + + assert '<!-- layout overloading -->' in result + + +@with_app(buildername='html', srcdir=(test_roots / 'test-templating')) +def test_autosummary_class_template_overloading(app): + app.builder.build_all() + + result = (app.outdir / 'generated' / 'sphinx.application.Sphinx.html').text( + encoding='utf-8') + + assert 'autosummary/class.rst method block overloading' in result + |
