From ac5c05b688d25a0034e7a05a920788baeb606e9c Mon Sep 17 00:00:00 2001 From: guido Date: Sun, 11 Feb 2007 02:54:22 +0100 Subject: [PATCH] [svn r38438] Rolling back r38422 and part of r38397 because it made that a lot of stuff was printed to stdout/err. --HG-- branch : trunk --- py/test/rsession/local.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/py/test/rsession/local.py b/py/test/rsession/local.py index 22c72e17e..b39643587 100644 --- a/py/test/rsession/local.py +++ b/py/test/rsession/local.py @@ -8,6 +8,18 @@ from py.__.test.rsession.executor import BoxExecutor, RunExecutor,\ from py.__.test.rsession import repevent from py.__.test.rsession.outcome import ReprOutcome +# XXX copied from session.py +def startcapture(session): + if not session.config.option.nocapture: + session._capture = py.io.StdCapture() + +def finishcapture(session): + if hasattr(session, '_capture'): + capture = session._capture + del session._capture + return capture.reset() + return "", "" + def box_runner(item, session, reporter): r = BoxExecutor(item, config=session.config) return ReprOutcome(r.execute()) @@ -23,9 +35,12 @@ def benchmark_runner(item, session, reporter): def apigen_runner(item, session, reporter): #retval = plain_runner(item, session, reporter) + startcapture(session) r = ApigenExecutor(item, reporter=reporter, config=session.config) outcome = r.execute(session.tracer) - return ReprOutcome(outcome.make_repr(session.config.option.tbstyle)) + outcome = ReprOutcome(outcome.make_repr(session.config.option.tbstyle)) + outcome.stdout, outcome.stderr = finishcapture(session) + return outcome def exec_runner(item, session, reporter): raise NotImplementedError()