summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
authorR David Murray <rdmurray@bitdance.com>2016-06-03 23:28:35 (GMT)
committerR David Murray <rdmurray@bitdance.com>2016-06-03 23:28:35 (GMT)
commitead9bfc5c392951d8f0d8c537a138df672b762e4 (patch)
tree8abe2fd240e810f6c9adbacbd78ed8910c9d21b9 /Lib/test
parent369826a879386a6de7e493e5b789fd8a5b5fa5be (diff)
downloadcpython-ead9bfc5c392951d8f0d8c537a138df672b762e4.zip
cpython-ead9bfc5c392951d8f0d8c537a138df672b762e4.tar.gz
cpython-ead9bfc5c392951d8f0d8c537a138df672b762e4.tar.bz2
#16484: Fix pydoc doc links to modules whose names are mixed case.
Patch by Sean Rodman, test by Kaushik N.
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_pydoc.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/test/test_pydoc.py b/Lib/test/test_pydoc.py
index f284779..59aa715 100644
--- a/Lib/test/test_pydoc.py
+++ b/Lib/test/test_pydoc.py
@@ -18,6 +18,7 @@ import types
import unittest
import urllib.parse
import xml.etree
+import xml.etree.ElementTree
import textwrap
from io import StringIO
from collections import namedtuple
@@ -352,6 +353,14 @@ def get_pydoc_html(module):
loc = "<br><a href=\"" + loc + "\">Module Docs</a>"
return output.strip(), loc
+def get_pydoc_link(module):
+ "Returns a documentation web link of a module"
+ dirname = os.path.dirname
+ basedir = os.path.join(dirname(dirname(__file__)))
+ doc = pydoc.TextDoc()
+ loc = doc.getdocloc(module, basedir=basedir)
+ return loc
+
def get_pydoc_text(module):
"Returns pydoc generated output as text"
doc = pydoc.TextDoc()
@@ -443,6 +452,11 @@ class PydocDocTest(unittest.TestCase):
doc = pydoc.render_doc(BinaryInteger)
self.assertIn('<BinaryInteger.zero: 0>', doc)
+ def test_mixed_case_module_names_are_lower_cased(self):
+ # issue16484
+ doc_link = get_pydoc_link(xml.etree.ElementTree)
+ self.assertIn('xml.etree.elementtree', doc_link)
+
def test_issue8225(self):
# Test issue8225 to ensure no doc link appears for xml.etree
result, doc_loc = get_pydoc_text(xml.etree)