summaryrefslogtreecommitdiff
path: root/python/subunit/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/subunit/__init__.py')
-rw-r--r--python/subunit/__init__.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/python/subunit/__init__.py b/python/subunit/__init__.py
index b4c9397..2b494de 100644
--- a/python/subunit/__init__.py
+++ b/python/subunit/__init__.py
@@ -123,6 +123,7 @@ import sys
import unittest
from testtools import content, content_type, ExtendedToOriginalDecorator
+from testtools.content import TracebackContent
from testtools.compat import _b, _u, BytesIO, StringIO
try:
from testtools.testresult.real import _StringException
@@ -682,10 +683,9 @@ class TestProtocolClient(testresult.TestResult):
raise ValueError
if error is not None:
self._stream.write(self._start_simple)
- # XXX: this needs to be made much stricter, along the lines of
- # Martin[gz]'s work in testtools. Perhaps subunit can use that?
- for line in self._exc_info_to_unicode(error, test).splitlines():
- self._stream.write(("%s\n" % line).encode('utf8'))
+ content = TracebackContent(error, test)
+ for bytes in content.iter_bytes():
+ self._stream.write(bytes)
elif details is not None:
self._write_details(details)
else: