diff options
author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2018-02-03 02:14:06 +0900 |
---|---|---|
committer | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2018-02-03 02:14:06 +0900 |
commit | 39d45842486c7a4ab365818901db29907ebcfd2f (patch) | |
tree | f328de2aceb7ec10fded847a38aba498d1375864 /tests/test_ext_intersphinx.py | |
parent | 35f05bdc7e1000a56bf945ae44d3c6da27bd315b (diff) | |
parent | a19c3006530e97f1397dedbc8f4d630dbec8db62 (diff) | |
download | sphinx-git-39d45842486c7a4ab365818901db29907ebcfd2f.tar.gz |
Merge branch 'stable' into 1.7-release
Diffstat (limited to 'tests/test_ext_intersphinx.py')
-rw-r--r-- | tests/test_ext_intersphinx.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/test_ext_intersphinx.py b/tests/test_ext_intersphinx.py index 91e21187b..cc50c00c9 100644 --- a/tests/test_ext_intersphinx.py +++ b/tests/test_ext_intersphinx.py @@ -312,6 +312,38 @@ def test_load_mappings_warnings(tempdir, app, status, warning): assert warning.getvalue().count('\n') == 1 +def test_load_mappings_fallback(tempdir, app, status, warning): + inv_file = tempdir / 'inventory' + inv_file.write_bytes(inventory_v2) + app.config.intersphinx_cache_limit = 0 + + # connect to invalid path + app.config.intersphinx_mapping = { + 'fallback': ('https://docs.python.org/py3k/', '/invalid/inventory/path'), + } + load_mappings(app) + assert "failed to reach any of the inventories" in warning.getvalue() + + rn = reference_check(app, 'py', 'func', 'module1.func', 'foo') + assert rn is None + + # clear messages + status.truncate(0) + warning.truncate(0) + + # add fallbacks to mapping + app.config.intersphinx_mapping = { + 'fallback': ('https://docs.python.org/py3k/', ('/invalid/inventory/path', + inv_file)), + } + load_mappings(app) + assert "encountered some issues with some of the inventories" in status.getvalue() + assert "" == warning.getvalue() + + rn = reference_check(app, 'py', 'func', 'module1.func', 'foo') + assert isinstance(rn, nodes.reference) + + class TestStripBasicAuth(unittest.TestCase): """Tests for sphinx.ext.intersphinx._strip_basic_auth()""" def test_auth_stripped(self): |