mirror of
https://github.com/python/cpython.git
synced 2025-07-15 23:35:23 +00:00
(merge 3.2) Issue #12451: pydoc.synopsis() now reads the encoding cookie if
available, to read the Python script from the right encoding.
This commit is contained in:
commit
319672e8a6
3 changed files with 20 additions and 5 deletions
|
@ -16,7 +16,7 @@ from io import StringIO
|
|||
from collections import namedtuple
|
||||
from contextlib import contextmanager
|
||||
from test.support import TESTFN, forget, rmtree, EnvironmentVarGuard, \
|
||||
reap_children, captured_output, captured_stdout
|
||||
reap_children, captured_output, captured_stdout, unlink
|
||||
|
||||
from test import pydoc_mod
|
||||
|
||||
|
@ -395,6 +395,17 @@ class PydocDocTest(unittest.TestCase):
|
|||
self.assertIn('_replace', helptext)
|
||||
self.assertIn('_asdict', helptext)
|
||||
|
||||
def test_synopsis(self):
|
||||
self.addCleanup(unlink, TESTFN)
|
||||
for encoding in ('ISO-8859-1', 'UTF-8'):
|
||||
with open(TESTFN, 'w', encoding=encoding) as script:
|
||||
if encoding != 'UTF-8':
|
||||
print('#coding: {}'.format(encoding), file=script)
|
||||
print('"""line 1: h\xe9', file=script)
|
||||
print('line 2: hi"""', file=script)
|
||||
synopsis = pydoc.synopsis(TESTFN, {})
|
||||
self.assertEqual(synopsis, 'line 1: h\xe9')
|
||||
|
||||
|
||||
class TestDescriptions(unittest.TestCase):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue