summaryrefslogtreecommitdiff
path: root/tests/test_ext_autosummary.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_ext_autosummary.py')
-rw-r--r--tests/test_ext_autosummary.py43
1 files changed, 37 insertions, 6 deletions
diff --git a/tests/test_ext_autosummary.py b/tests/test_ext_autosummary.py
index 628c2524b..3e15ef244 100644
--- a/tests/test_ext_autosummary.py
+++ b/tests/test_ext_autosummary.py
@@ -31,6 +31,7 @@ default_kw = {
'confoverrides': {
'extensions': ['sphinx.ext.autosummary'],
'autosummary_generate': True,
+ 'autosummary_generate_overwrite': False,
'source_suffix': '.rst'
}
}
@@ -209,13 +210,13 @@ def test_autosummary_generate(app, status, warning):
assert doctree[3][0][0][2][2].astext() == 'autosummary_dummy_module.bar(x[, y])\n\n'
assert doctree[3][0][0][2][3].astext() == 'autosummary_importfail\n\n'
- module = (app.srcdir / 'generated' / 'autosummary_dummy_module.rst').text()
+ module = (app.srcdir / 'generated' / 'autosummary_dummy_module.rst').read_text()
assert (' .. autosummary::\n'
' \n'
' Foo\n'
' \n' in module)
- Foo = (app.srcdir / 'generated' / 'autosummary_dummy_module.Foo.rst').text()
+ Foo = (app.srcdir / 'generated' / 'autosummary_dummy_module.Foo.rst').read_text()
assert '.. automethod:: __init__' in Foo
assert (' .. autosummary::\n'
' \n'
@@ -228,10 +229,40 @@ def test_autosummary_generate(app, status, warning):
' \n' in Foo)
+@pytest.mark.sphinx('dummy', testroot='ext-autosummary',
+ confoverrides={'autosummary_generate_overwrite': False})
+def test_autosummary_generate_overwrite1(app_params, make_app):
+ args, kwargs = app_params
+ srcdir = kwargs.get('srcdir')
+
+ (srcdir / 'generated').makedirs(exist_ok=True)
+ (srcdir / 'generated' / 'autosummary_dummy_module.rst').write_text('')
+
+ app = make_app(*args, **kwargs)
+ content = (srcdir / 'generated' / 'autosummary_dummy_module.rst').read_text()
+ assert content == ''
+ assert 'autosummary_dummy_module.rst' not in app._warning.getvalue()
+
+
+@pytest.mark.sphinx('dummy', testroot='ext-autosummary',
+ confoverrides={'autosummary_generate_overwrite': True})
+def test_autosummary_generate_overwrite2(app_params, make_app):
+ args, kwargs = app_params
+ srcdir = kwargs.get('srcdir')
+
+ (srcdir / 'generated').makedirs(exist_ok=True)
+ (srcdir / 'generated' / 'autosummary_dummy_module.rst').write_text('')
+
+ app = make_app(*args, **kwargs)
+ content = (srcdir / 'generated' / 'autosummary_dummy_module.rst').read_text()
+ assert content != ''
+ assert 'autosummary_dummy_module.rst' not in app._warning.getvalue()
+
+
@pytest.mark.sphinx('latex', **default_kw)
def test_autosummary_latex_table_colspec(app, status, warning):
app.builder.build_all()
- result = (app.outdir / 'python.tex').text(encoding='utf8')
+ result = (app.outdir / 'python.tex').read_text()
print(status.getvalue())
print(warning.getvalue())
assert r'\begin{longtable}[c]{\X{1}{2}\X{1}{2}}' in result
@@ -281,7 +312,7 @@ def test_autosummary_imported_members(app, status, warning):
# generated/foo is generated successfully
assert app.env.get_doctree('generated/autosummary_dummy_package')
- module = (app.srcdir / 'generated' / 'autosummary_dummy_package.rst').text()
+ module = (app.srcdir / 'generated' / 'autosummary_dummy_package.rst').read_text()
assert (' .. autosummary::\n'
' \n'
' Bar\n'
@@ -300,7 +331,7 @@ def test_generate_autosummary_docs_property(app):
mock.return_value = [('target.methods.Base.prop', 'prop', None)]
generate_autosummary_docs([], output_dir=app.srcdir, builder=app.builder, app=app)
- content = (app.srcdir / 'target.methods.Base.prop.rst').text()
+ content = (app.srcdir / 'target.methods.Base.prop.rst').read_text()
assert content == ("target.methods.Base.prop\n"
"========================\n"
"\n"
@@ -313,7 +344,7 @@ def test_generate_autosummary_docs_property(app):
def test_autosummary_skip_member(app):
app.build()
- content = (app.srcdir / 'generate' / 'target.Foo.rst').text()
+ content = (app.srcdir / 'generate' / 'target.Foo.rst').read_text()
assert 'Foo.skipmeth' not in content
assert 'Foo._privatemeth' in content