summaryrefslogtreecommitdiff
path: root/testrepository/repository/file.py
diff options
context:
space:
mode:
Diffstat (limited to 'testrepository/repository/file.py')
-rw-r--r--testrepository/repository/file.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/testrepository/repository/file.py b/testrepository/repository/file.py
index 85ee1a3..5de131d 100644
--- a/testrepository/repository/file.py
+++ b/testrepository/repository/file.py
@@ -25,7 +25,7 @@ import os.path
import sys
import tempfile
-import subunit
+import subunit.v2
from subunit import TestProtocolClient
import testtools
from testtools.compat import _b
@@ -188,10 +188,23 @@ class _DiskRun(AbstractTestRun):
return self._run_id
def get_subunit_stream(self):
- return BytesIO(self._content)
+ # Transcode - we want V2.
+ v1_stream = BytesIO(self._content)
+ v1_case = subunit.ProtocolTestCase(v1_stream)
+ output = BytesIO()
+ output_stream = subunit.v2.StreamResultToBytes(output)
+ output_stream = testtools.ExtendedToStreamDecorator(output_stream)
+ output_stream.startTestRun()
+ try:
+ v1_case.run(output_stream)
+ finally:
+ output_stream.stopTestRun()
+ output.seek(0)
+ return output
def get_test(self):
- case = subunit.ProtocolTestCase(self.get_subunit_stream())
+ #case = subunit.ProtocolTestCase(self.get_subunit_stream())
+ case = subunit.ProtocolTestCase(BytesIO(self._content))
def wrap_result(result):
# Wrap in a router to mask out startTestRun/stopTestRun from the
# ExtendedToStreamDecorator.