diff options
author | Georg Brandl <georg@python.org> | 2008-06-04 11:41:32 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2008-06-04 11:41:32 (GMT) |
commit | f954c4b9fb8529cc13a2e24c58137c66ac836b28 (patch) | |
tree | 91575068c14eec261bc4e2c44da9c881eda4efe1 /Lib/doctest.py | |
parent | e5d68aceb529934e75d505bbfaf867e02493a1bc (diff) | |
download | cpython-f954c4b9fb8529cc13a2e24c58137c66ac836b28.zip cpython-f954c4b9fb8529cc13a2e24c58137c66ac836b28.tar.gz cpython-f954c4b9fb8529cc13a2e24c58137c66ac836b28.tar.bz2 |
Remove meaning of -ttt, but still accept -t option on cmdline for compatibility.
Diffstat (limited to 'Lib/doctest.py')
-rw-r--r-- | Lib/doctest.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Lib/doctest.py b/Lib/doctest.py index dad8333..772e142 100644 --- a/Lib/doctest.py +++ b/Lib/doctest.py @@ -1441,6 +1441,13 @@ class OutputChecker: and returns true if they match; and `output_difference`, which returns a string describing the differences between two outputs. """ + + def _toAscii(self, s): + """ + Convert string to hex-escaped ASCII string. + """ + return str(s.encode('ASCII', 'backslashreplace'), "ASCII") + def check_output(self, want, got, optionflags): """ Return True iff the actual output from an example (`got`) @@ -1451,6 +1458,15 @@ class OutputChecker: documentation for `TestRunner` for more information about option flags. """ + + # If `want` contains hex-escaped character such as "\u1234", + # then `want` is a string of six characters(e.g. [\,u,1,2,3,4]). + # On the other hand, `got` could be an another sequence of + # characters such as [\u1234], so `want` and `got` should + # be folded to hex-escaped ASCII string to compare. + got = self._toAscii(got) + want = self._toAscii(want) + # Handle the common case first, for efficiency: # if they're string-identical, always return true. if got == want: |