diff options
| author | Georg Brandl <georg@python.org> | 2010-08-01 22:05:31 (GMT) |
|---|---|---|
| committer | Georg Brandl <georg@python.org> | 2010-08-01 22:05:31 (GMT) |
| commit | 03c1cff57626e806b6e761be43dfb4e7d901a2fa (patch) | |
| tree | 1c5adb924b860e108f1fa5fa75219e6261b5bf4b /Lib/test/test_doctest.py | |
| parent | c5356994edac98da01305f7664182c4a6ed57b9d (diff) | |
| download | cpython-03c1cff57626e806b6e761be43dfb4e7d901a2fa.zip cpython-03c1cff57626e806b6e761be43dfb4e7d901a2fa.tar.gz cpython-03c1cff57626e806b6e761be43dfb4e7d901a2fa.tar.bz2 | |
Merged revisions 83392,83426 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/release27-maint
................
r83392 | georg.brandl | 2010-08-01 10:22:05 +0200 (So, 01 Aug 2010) | 1 line
#8471: reset _SpoofOut.buf to an empty string when truncating; if Unicode had been output previously, it had been coerced to a Unicode string, potentially making subsequent prints behave differently or raise UnicodeErrors.
................
r83426 | georg.brandl | 2010-08-01 21:06:51 +0200 (So, 01 Aug 2010) | 27 lines
Merged revisions 83370,83372-83374,83384 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83370 | georg.brandl | 2010-07-31 23:51:48 +0200 (Sa, 31 Jul 2010) | 5 lines
#8198: the Helper class should not save the stdin and stdout objects
at import time, rather by default use the current streams like the
other APIs that output help.
........
r83372 | georg.brandl | 2010-08-01 00:05:54 +0200 (So, 01 Aug 2010) | 1 line
#4007: remove *.a and *.so.X.Y files in "make clean".
........
r83373 | georg.brandl | 2010-08-01 00:11:11 +0200 (So, 01 Aug 2010) | 1 line
#5147: revert accidental indentation of header constant for MozillaCookieJar.
........
r83374 | georg.brandl | 2010-08-01 00:32:52 +0200 (So, 01 Aug 2010) | 1 line
#5146: handle UID THREAD command correctly.
........
r83384 | georg.brandl | 2010-08-01 08:32:55 +0200 (So, 01 Aug 2010) | 1 line
Build properties using lambdas. This makes test_pyclbr pass again, because it does not think that input and output are methods anymore.
........
................
Diffstat (limited to 'Lib/test/test_doctest.py')
| -rw-r--r-- | Lib/test/test_doctest.py | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py index c332a40..f5a328e 100644 --- a/Lib/test/test_doctest.py +++ b/Lib/test/test_doctest.py @@ -1508,7 +1508,33 @@ source: >>> test = doctest.DocTestParser().get_doctest(s, {}, 's', 's.py', 0) Traceback (most recent call last): ValueError: line 0 of the doctest for s has an option directive on a line with no example: '# doctest: +ELLIPSIS' -""" + + """ + + def test_unicode_output(self): r""" + +Check that unicode output works: + + >>> u'\xe9' + u'\xe9' + +If we return unicode, SpoofOut's buf variable becomes automagically +converted to unicode. This means all subsequent output becomes converted +to unicode, and if the output contains non-ascii characters that failed. +It used to be that this state change carried on between tests, meaning +tests would fail if unicode has been output previously in the testrun. +This test tests that this is no longer so: + + >>> print u'abc' + abc + +And then return a string with non-ascii characters: + + >>> print u'\xe9'.encode('utf-8') + é + + """ + def test_testsource(): r""" Unit tests for `testsource()`. |
