Kaydet (Commit) d23ea061 authored tarafından Michael Foord's avatar Michael Foord

Merged revisions 80708 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80708 | michael.foord | 2010-05-02 21:39:42 +0100 (Sun, 02 May 2010) | 1 line

  Fix unittest tests to not abuse traceback.format_exception
........
üst 6e20a1bd
......@@ -153,9 +153,7 @@ class TestResult(object):
length = self._count_relevant_tb_levels(tb)
msgLines = traceback.format_exception(exctype, value, tb, length)
else:
chain = exctype is not None
msgLines = traceback.format_exception(exctype, value, tb,
chain=chain)
msgLines = traceback.format_exception(exctype, value, tb)
if self.buffer:
output = sys.stdout.getvalue()
......
......@@ -4,6 +4,7 @@ import textwrap
from test import support
import traceback
import unittest
......@@ -361,6 +362,15 @@ class Test_OldTestResult(unittest.TestCase):
runner.run(Test('testFoo'))
class MockTraceback(object):
@staticmethod
def format_exception(*_):
return ['A traceback']
def restore_traceback():
unittest.result.traceback = traceback
class TestOutputBuffering(unittest.TestCase):
def setUp(self):
......@@ -441,6 +451,9 @@ class TestOutputBuffering(unittest.TestCase):
return result
def testBufferOutputAddErrorOrFailure(self):
unittest.result.traceback = MockTraceback
self.addCleanup(restore_traceback)
for message_attr, add_attr, include_error in [
('errors', 'addError', True),
('failures', 'addFailure', False),
......@@ -476,7 +489,8 @@ class TestOutputBuffering(unittest.TestCase):
Stderr:
bar
""")
expectedFullMessage = 'NoneType\n%s%s' % (expectedOutMessage, expectedErrMessage)
expectedFullMessage = 'A traceback%s%s' % (expectedOutMessage, expectedErrMessage)
self.assertIs(test, self)
self.assertEqual(result._original_stdout.getvalue(), expectedOutMessage)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment