summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_build_epub.py4
-rw-r--r--tests/test_build_html.py26
-rw-r--r--tests/test_build_latex.py7
-rw-r--r--tests/test_domain_cpp.py5
-rw-r--r--tests/test_domain_py.py63
-rw-r--r--tests/test_domain_std.py3
-rw-r--r--tests/test_environment.py2
-rw-r--r--tests/test_ext_autosectionlabel.py8
-rw-r--r--tests/test_ext_todo.py4
-rw-r--r--tests/test_smartquotes.py4
-rw-r--r--tests/test_util_pycompat.py38
11 files changed, 42 insertions, 122 deletions
diff --git a/tests/test_build_epub.py b/tests/test_build_epub.py
index fc4b5329a..193cd9024 100644
--- a/tests/test_build_epub.py
+++ b/tests/test_build_epub.py
@@ -15,8 +15,6 @@ from xml.etree import ElementTree
import pytest
-from sphinx.util import docutils
-
# check given command is runnable
def runnable(command):
@@ -355,8 +353,6 @@ def test_epub_css_files(app):
'href="https://example.com/custom.css" />' not in content)
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('epub', testroot='roles-download')
def test_html_download_role(app, status, warning):
app.build()
diff --git a/tests/test_build_html.py b/tests/test_build_html.py
index b3406b74c..6888fc52a 100644
--- a/tests/test_build_html.py
+++ b/tests/test_build_html.py
@@ -18,7 +18,7 @@ from html5lib import HTMLParser
from sphinx.builders.html import validate_html_extra_path, validate_html_static_path
from sphinx.errors import ConfigError
from sphinx.testing.util import strip_escseq
-from sphinx.util import docutils, md5
+from sphinx.util import md5
from sphinx.util.inventory import InventoryFile
@@ -407,8 +407,6 @@ def test_html4_output(app, status, warning):
(".//a[@href='_sources/otherext.foo.txt']", ''),
]
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', tags=['testtag'],
confoverrides={'html_context.hckey_co': 'hcval_co'})
@pytest.mark.test_params(shared_result='test_build_html_output')
@@ -418,8 +416,6 @@ def test_html5_output(app, cached_etree_parse, fname, expect):
check_xpath(cached_etree_parse(app.outdir / fname), fname, *expect)
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html')
@pytest.mark.test_params(shared_result='test_build_html_output')
def test_html_download(app):
@@ -444,8 +440,6 @@ def test_html_download(app):
assert matched.group(1) == filename
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='roles-download')
def test_html_download_role(app, status, warning):
app.build()
@@ -524,8 +518,6 @@ def test_html_translator(app):
(".//h1//span[@class='section-number']", '2.1.1. ', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='tocdepth')
@pytest.mark.test_params(shared_result='test_build_html_tocdepth')
def test_tocdepth(app, cached_etree_parse, fname, expect):
@@ -571,8 +563,6 @@ def test_tocdepth(app, cached_etree_parse, fname, expect):
(".//h4//span[@class='section-number']", '2.1.1. ', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('singlehtml', testroot='tocdepth')
@pytest.mark.test_params(shared_result='test_build_html_tocdepth')
def test_tocdepth_singlehtml(app, cached_etree_parse, fname, expect):
@@ -630,8 +620,6 @@ def test_numfig_disabled_warn(app, warning):
"span[@class='caption-number']", None, True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='numfig')
@pytest.mark.test_params(shared_result='test_build_html_numfig')
def test_numfig_disabled(app, cached_etree_parse, fname, expect):
@@ -738,8 +726,6 @@ def test_numfig_without_numbered_toctree_warn(app, warning):
"span[@class='caption-number']", '^Listing 6 $', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx(
'html', testroot='numfig',
srcdir='test_numfig_without_numbered_toctree',
@@ -846,8 +832,6 @@ def test_numfig_with_numbered_toctree_warn(app, warning):
"span[@class='caption-number']", '^Listing 2.2 $', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='numfig', confoverrides={'numfig': True})
@pytest.mark.test_params(shared_result='test_build_html_numfig_on')
def test_numfig_with_numbered_toctree(app, cached_etree_parse, fname, expect):
@@ -951,8 +935,6 @@ def test_numfig_with_prefix_warn(app, warning):
"span[@class='caption-number']", '^Code-2.2 $', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='numfig',
confoverrides={'numfig': True,
'numfig_format': {'figure': 'Figure:%s',
@@ -1057,8 +1039,6 @@ def test_numfig_with_secnum_depth_warn(app, warning):
"span[@class='caption-number']", '^Listing 2.1.2 $', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='numfig',
confoverrides={'numfig': True,
'numfig_secnum_depth': 2})
@@ -1142,8 +1122,6 @@ def test_numfig_with_secnum_depth(app, cached_etree_parse, fname, expect):
"span[@class='caption-number']", '^Listing 2.2 $', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('singlehtml', testroot='numfig', confoverrides={'numfig': True})
@pytest.mark.test_params(shared_result='test_build_html_numfig_on')
def test_numfig_with_singlehtml(app, cached_etree_parse, fname, expect):
@@ -1168,8 +1146,6 @@ def test_numfig_with_singlehtml(app, cached_etree_parse, fname, expect):
(".//li/p/a/span", 'No.2', True),
],
}))
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='add_enumerable_node',
srcdir='test_enumerable_node')
def test_enumerable_node(app, cached_etree_parse, fname, expect):
diff --git a/tests/test_build_latex.py b/tests/test_build_latex.py
index d3c491461..eaf77189b 100644
--- a/tests/test_build_latex.py
+++ b/tests/test_build_latex.py
@@ -22,7 +22,6 @@ from sphinx.builders.latex import default_latex_documents
from sphinx.config import Config
from sphinx.errors import SphinxError, ThemeError
from sphinx.testing.util import strip_escseq
-from sphinx.util import docutils
from sphinx.util.osutil import cd, ensuredir
from sphinx.writers.latex import LaTeXTranslator
@@ -1124,8 +1123,6 @@ def test_maxlistdepth_at_ten(app, status, warning):
compile_latex_document(app, 'python.tex')
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('latex', testroot='latex-table')
@pytest.mark.test_params(shared_result='latex-table')
def test_latex_table_tabulars(app, status, warning):
@@ -1195,8 +1192,6 @@ def test_latex_table_tabulars(app, status, warning):
assert actual == expected
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('latex', testroot='latex-table')
@pytest.mark.test_params(shared_result='latex-table')
def test_latex_table_longtable(app, status, warning):
@@ -1256,8 +1251,6 @@ def test_latex_table_longtable(app, status, warning):
assert actual == expected
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('latex', testroot='latex-table')
@pytest.mark.test_params(shared_result='latex-table')
def test_latex_table_complex_tables(app, status, warning):
diff --git a/tests/test_domain_cpp.py b/tests/test_domain_cpp.py
index 961646131..48227dddc 100644
--- a/tests/test_domain_cpp.py
+++ b/tests/test_domain_cpp.py
@@ -16,7 +16,6 @@ import sphinx.domains.cpp as cppDomain
from sphinx import addnodes
from sphinx.domains.cpp import DefinitionParser, DefinitionError, NoOldIdError
from sphinx.domains.cpp import Symbol, _max_id, _id_prefix
-from sphinx.util import docutils
def parse(name, string):
@@ -1060,8 +1059,6 @@ def test_build_domain_cpp_misuse_of_roles(app, status, warning):
assert len(ws) == len(warn)
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx(testroot='domain-cpp', confoverrides={'add_function_parentheses': True})
def test_build_domain_cpp_with_add_function_parentheses_is_True(app, status, warning):
app.builder.build_all()
@@ -1103,8 +1100,6 @@ def test_build_domain_cpp_with_add_function_parentheses_is_True(app, status, war
check(s, t, f)
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx(testroot='domain-cpp', confoverrides={'add_function_parentheses': False})
def test_build_domain_cpp_with_add_function_parentheses_is_False(app, status, warning):
app.builder.build_all()
diff --git a/tests/test_domain_py.py b/tests/test_domain_py.py
index 98b295b99..653ab1cd4 100644
--- a/tests/test_domain_py.py
+++ b/tests/test_domain_py.py
@@ -192,20 +192,22 @@ def test_domain_py_find_obj(app, status, warning):
assert (find_obj(None, None, 'NONEXISTANT', 'class') == [])
assert (find_obj(None, None, 'NestedParentA', 'class') ==
- [('NestedParentA', ('roles', 'NestedParentA', 'class'))])
+ [('NestedParentA', ('roles', 'NestedParentA', 'class', False))])
assert (find_obj(None, None, 'NestedParentA.NestedChildA', 'class') ==
- [('NestedParentA.NestedChildA', ('roles', 'NestedParentA.NestedChildA', 'class'))])
+ [('NestedParentA.NestedChildA',
+ ('roles', 'NestedParentA.NestedChildA', 'class', False))])
assert (find_obj(None, 'NestedParentA', 'NestedChildA', 'class') ==
- [('NestedParentA.NestedChildA', ('roles', 'NestedParentA.NestedChildA', 'class'))])
+ [('NestedParentA.NestedChildA',
+ ('roles', 'NestedParentA.NestedChildA', 'class', False))])
assert (find_obj(None, None, 'NestedParentA.NestedChildA.subchild_1', 'meth') ==
[('NestedParentA.NestedChildA.subchild_1',
- ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method'))])
+ ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method', False))])
assert (find_obj(None, 'NestedParentA', 'NestedChildA.subchild_1', 'meth') ==
[('NestedParentA.NestedChildA.subchild_1',
- ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method'))])
+ ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method', False))])
assert (find_obj(None, 'NestedParentA.NestedChildA', 'subchild_1', 'meth') ==
[('NestedParentA.NestedChildA.subchild_1',
- ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method'))])
+ ('roles', 'NestedParentA.NestedChildA.subchild_1', 'method', False))])
def test_get_full_qualified_name():
@@ -465,7 +467,7 @@ def test_pydata(app):
[desc, ([desc_signature, desc_name, "var"],
[desc_content, ()])]))
assert 'var' in domain.objects
- assert domain.objects['var'] == ('index', 'var', 'data')
+ assert domain.objects['var'] == ('index', 'var', 'data', False)
def test_pyfunction(app):
@@ -495,9 +497,9 @@ def test_pyfunction(app):
entries=[('single', 'func2() (in module example)', 'example.func2', '', None)])
assert 'func1' in domain.objects
- assert domain.objects['func1'] == ('index', 'func1', 'function')
+ assert domain.objects['func1'] == ('index', 'func1', 'function', False)
assert 'example.func2' in domain.objects
- assert domain.objects['example.func2'] == ('index', 'example.func2', 'function')
+ assert domain.objects['example.func2'] == ('index', 'example.func2', 'function', False)
def test_pyclass_options(app):
@@ -519,13 +521,13 @@ def test_pyclass_options(app):
assert_node(doctree[0], addnodes.index,
entries=[('single', 'Class1 (built-in class)', 'Class1', '', None)])
assert 'Class1' in domain.objects
- assert domain.objects['Class1'] == ('index', 'Class1', 'class')
+ assert domain.objects['Class1'] == ('index', 'Class1', 'class', False)
# :final:
assert_node(doctree[2], addnodes.index,
entries=[('single', 'Class2 (built-in class)', 'Class2', '', None)])
assert 'Class2' in domain.objects
- assert domain.objects['Class2'] == ('index', 'Class2', 'class')
+ assert domain.objects['Class2'] == ('index', 'Class2', 'class', False)
def test_pymethod_options(app):
@@ -571,7 +573,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth1' in domain.objects
- assert domain.objects['Class.meth1'] == ('index', 'Class.meth1', 'method')
+ assert domain.objects['Class.meth1'] == ('index', 'Class.meth1', 'method', False)
# :classmethod:
assert_node(doctree[1][1][2], addnodes.index,
@@ -581,7 +583,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth2' in domain.objects
- assert domain.objects['Class.meth2'] == ('index', 'Class.meth2', 'method')
+ assert domain.objects['Class.meth2'] == ('index', 'Class.meth2', 'method', False)
# :staticmethod:
assert_node(doctree[1][1][4], addnodes.index,
@@ -591,7 +593,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth3' in domain.objects
- assert domain.objects['Class.meth3'] == ('index', 'Class.meth3', 'method')
+ assert domain.objects['Class.meth3'] == ('index', 'Class.meth3', 'method', False)
# :async:
assert_node(doctree[1][1][6], addnodes.index,
@@ -601,7 +603,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth4' in domain.objects
- assert domain.objects['Class.meth4'] == ('index', 'Class.meth4', 'method')
+ assert domain.objects['Class.meth4'] == ('index', 'Class.meth4', 'method', False)
# :property:
assert_node(doctree[1][1][8], addnodes.index,
@@ -610,7 +612,7 @@ def test_pymethod_options(app):
[desc_name, "meth5"])],
[desc_content, ()]))
assert 'Class.meth5' in domain.objects
- assert domain.objects['Class.meth5'] == ('index', 'Class.meth5', 'method')
+ assert domain.objects['Class.meth5'] == ('index', 'Class.meth5', 'method', False)
# :abstractmethod:
assert_node(doctree[1][1][10], addnodes.index,
@@ -620,7 +622,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth6' in domain.objects
- assert domain.objects['Class.meth6'] == ('index', 'Class.meth6', 'method')
+ assert domain.objects['Class.meth6'] == ('index', 'Class.meth6', 'method', False)
# :final:
assert_node(doctree[1][1][12], addnodes.index,
@@ -630,7 +632,7 @@ def test_pymethod_options(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth7' in domain.objects
- assert domain.objects['Class.meth7'] == ('index', 'Class.meth7', 'method')
+ assert domain.objects['Class.meth7'] == ('index', 'Class.meth7', 'method', False)
def test_pyclassmethod(app):
@@ -651,7 +653,7 @@ def test_pyclassmethod(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth' in domain.objects
- assert domain.objects['Class.meth'] == ('index', 'Class.meth', 'method')
+ assert domain.objects['Class.meth'] == ('index', 'Class.meth', 'method', False)
def test_pystaticmethod(app):
@@ -672,7 +674,7 @@ def test_pystaticmethod(app):
[desc_parameterlist, ()])],
[desc_content, ()]))
assert 'Class.meth' in domain.objects
- assert domain.objects['Class.meth'] == ('index', 'Class.meth', 'method')
+ assert domain.objects['Class.meth'] == ('index', 'Class.meth', 'method', False)
def test_pyattribute(app):
@@ -696,7 +698,7 @@ def test_pyattribute(app):
[desc_annotation, " = ''"])],
[desc_content, ()]))
assert 'Class.attr' in domain.objects
- assert domain.objects['Class.attr'] == ('index', 'Class.attr', 'attribute')
+ assert domain.objects['Class.attr'] == ('index', 'Class.attr', 'attribute', False)
def test_pydecorator_signature(app):
@@ -711,7 +713,7 @@ def test_pydecorator_signature(app):
domain="py", objtype="function", noindex=False)
assert 'deco' in domain.objects
- assert domain.objects['deco'] == ('index', 'deco', 'function')
+ assert domain.objects['deco'] == ('index', 'deco', 'function', False)
def test_pydecoratormethod_signature(app):
@@ -726,7 +728,22 @@ def test_pydecoratormethod_signature(app):
domain="py", objtype="method", noindex=False)
assert 'deco' in domain.objects
- assert domain.objects['deco'] == ('index', 'deco', 'method')
+ assert domain.objects['deco'] == ('index', 'deco', 'method', False)
+
+
+def test_canonical(app):
+ text = (".. py:class:: io.StringIO\n"
+ " :canonical: _io.StringIO")
+ domain = app.env.get_domain('py')
+ doctree = restructuredtext.parse(app, text)
+ assert_node(doctree, (addnodes.index,
+ [desc, ([desc_signature, ([desc_annotation, "class "],
+ [desc_addname, "io."],
+ [desc_name, "StringIO"])],
+ desc_content)]))
+ assert 'io.StringIO' in domain.objects
+ assert domain.objects['io.StringIO'] == ('index', 'io.StringIO', 'class', False)
+ assert domain.objects['_io.StringIO'] == ('index', 'io.StringIO', 'class', True)
@pytest.mark.sphinx(freshenv=True)
diff --git a/tests/test_domain_std.py b/tests/test_domain_std.py
index 33a000a3f..66253b89a 100644
--- a/tests/test_domain_std.py
+++ b/tests/test_domain_std.py
@@ -25,7 +25,6 @@ from sphinx.addnodes import (
from sphinx.domains.std import StandardDomain
from sphinx.testing import restructuredtext
from sphinx.testing.util import assert_node
-from sphinx.util import docutils
def test_process_doc_handle_figure_caption():
@@ -331,8 +330,6 @@ def test_multiple_cmdoptions(app):
assert domain.progoptions[('cmd', '--output')] == ('index', 'cmdoption-cmd-o')
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx(testroot='productionlist')
def test_productionlist(app, status, warning):
app.builder.build_all()
diff --git a/tests/test_environment.py b/tests/test_environment.py
index 7290eb6a0..73d0c3edc 100644
--- a/tests/test_environment.py
+++ b/tests/test_environment.py
@@ -84,7 +84,7 @@ def test_object_inventory(app):
refs = app.env.domaindata['py']['objects']
assert 'func_without_module' in refs
- assert refs['func_without_module'] == ('objects', 'func_without_module', 'function')
+ assert refs['func_without_module'] == ('objects', 'func_without_module', 'function', False)
assert 'func_without_module2' in refs
assert 'mod.func_in_module' in refs
assert 'mod.Cls' in refs
diff --git a/tests/test_ext_autosectionlabel.py b/tests/test_ext_autosectionlabel.py
index 310435d8e..c8635ce2d 100644
--- a/tests/test_ext_autosectionlabel.py
+++ b/tests/test_ext_autosectionlabel.py
@@ -12,11 +12,7 @@ import re
import pytest
-from sphinx.util import docutils
-
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='ext-autosectionlabel')
def test_autosectionlabel_html(app, status, warning, skipped_labels=False):
app.builder.build_all()
@@ -55,15 +51,11 @@ def test_autosectionlabel_html(app, status, warning, skipped_labels=False):
# Re-use test definition from above, just change the test root directory
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='ext-autosectionlabel-prefix-document')
def test_autosectionlabel_prefix_document_html(app, status, warning):
test_autosectionlabel_html(app, status, warning)
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='ext-autosectionlabel',
confoverrides={'autosectionlabel_maxdepth': 3})
def test_autosectionlabel_maxdepth(app, status, warning):
diff --git a/tests/test_ext_todo.py b/tests/test_ext_todo.py
index 7b4fdeabe..633b151ac 100644
--- a/tests/test_ext_todo.py
+++ b/tests/test_ext_todo.py
@@ -12,11 +12,7 @@ import re
import pytest
-from sphinx.util import docutils
-
-@pytest.mark.skipif(docutils.__version_info__ < (0, 13),
- reason='docutils-0.13 or above is required')
@pytest.mark.sphinx('html', testroot='ext-todo', freshenv=True,
confoverrides={'todo_include_todos': True, 'todo_emit_warnings': True})
def test_todo(app, status, warning):
diff --git a/tests/test_smartquotes.py b/tests/test_smartquotes.py
index 6276e6a74..697a7592c 100644
--- a/tests/test_smartquotes.py
+++ b/tests/test_smartquotes.py
@@ -10,8 +10,6 @@
import pytest
-from sphinx.util import docutils
-
@pytest.mark.sphinx(buildername='html', testroot='smartquotes', freshenv=True)
def test_basic(app, status, warning):
@@ -63,8 +61,6 @@ def test_smartquotes_disabled(app, status, warning):
assert '<p>-- &quot;Sphinx&quot; is a tool that makes it easy ...</p>' in content
-@pytest.mark.skipif(docutils.__version_info__ < (0, 14),
- reason='docutils-0.14 or above is required')
@pytest.mark.sphinx(buildername='html', testroot='smartquotes', freshenv=True,
confoverrides={'smartquotes_action': 'q'})
def test_smartquotes_action(app, status, warning):
diff --git a/tests/test_util_pycompat.py b/tests/test_util_pycompat.py
deleted file mode 100644
index 67e61bb58..000000000
--- a/tests/test_util_pycompat.py
+++ /dev/null
@@ -1,38 +0,0 @@
-"""
- test_util_pycompat
- ~~~~~~~~~~~~~~~~~~
-
- Tests sphinx.util.pycompat functions.
-
- :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS.
- :license: BSD, see LICENSE for details.
-"""
-
-from sphinx.testing.util import strip_escseq
-from sphinx.util import logging
-from sphinx.util.pycompat import execfile_
-
-
-def test_execfile_python2(capsys, app, status, warning, tempdir):
- logging.setup(app, status, warning)
-
- conf_py = tempdir / 'conf.py'
- conf_py.write_bytes(b'print "hello"\n')
- execfile_(conf_py, {})
-
- msg = (
- 'Support for evaluating Python 2 syntax is deprecated '
- 'and will be removed in Sphinx 4.0. '
- 'Convert %s to Python 3 syntax.\n' % conf_py)
- assert msg in strip_escseq(warning.getvalue())
- captured = capsys.readouterr()
- assert captured.out == 'hello\n'
-
-
-def test_execfile(capsys, tempdir):
- conf_py = tempdir / 'conf.py'
- conf_py.write_bytes(b'print("hello")\n')
- execfile_(conf_py, {})
-
- captured = capsys.readouterr()
- assert captured.out == 'hello\n'