remove unused "suspend/resume" on capturing, some formatting cleanup

This commit is contained in:
holger krekel 2014-03-28 07:03:34 +01:00
parent 7b63fa5966
commit 2263fcf6b7
2 changed files with 9 additions and 54 deletions

View File

@ -426,7 +426,7 @@ class StdCaptureBase(object):
if hasattr(self, '_reset'):
raise ValueError("was already reset")
self._reset = True
outfile, errfile = self.stop_capturing(save=False)
outfile, errfile = self.stop_capturing()
out, err = "", ""
if outfile and not outfile.closed:
out = outfile.read()
@ -452,24 +452,9 @@ class StdCaptureFD(StdCaptureBase):
is invalid it will not be captured.
"""
def __init__(self, out=True, err=True, in_=True, patchsys=True):
self._options = {
"out": out,
"err": err,
"in_": in_,
"patchsys": patchsys,
}
self._save()
def _save(self):
in_ = self._options['in_']
out = self._options['out']
err = self._options['err']
patchsys = self._options['patchsys']
if in_:
try:
self.in_ = FDCapture(
0, tmpfile=None,
patchsys=patchsys)
self.in_ = FDCapture(0, tmpfile=None, patchsys=patchsys)
except OSError:
pass
if out:
@ -477,10 +462,7 @@ class StdCaptureFD(StdCaptureBase):
if hasattr(out, 'write'):
tmpfile = out
try:
self.out = FDCapture(
1, tmpfile=tmpfile,
patchsys=patchsys)
self._options['out'] = self.out.tmpfile
self.out = FDCapture(1, tmpfile=tmpfile, patchsys=patchsys)
except OSError:
pass
if err:
@ -489,10 +471,7 @@ class StdCaptureFD(StdCaptureBase):
else:
tmpfile = None
try:
self.err = FDCapture(
2, tmpfile=tmpfile,
patchsys=patchsys)
self._options['err'] = self.err.tmpfile
self.err = FDCapture(2, tmpfile=tmpfile, patchsys=patchsys)
except OSError:
pass
@ -507,7 +486,7 @@ class StdCaptureFD(StdCaptureBase):
#def pytest_sessionfinish(self):
# self.reset_capturings()
def stop_capturing(self, save=True):
def stop_capturing(self):
""" return (outfile, errfile) and stop capturing. """
outfile = errfile = None
if hasattr(self, 'out') and not self.out.tmpfile.closed:
@ -516,8 +495,6 @@ class StdCaptureFD(StdCaptureBase):
errfile = self.err.done()
if hasattr(self, 'in_'):
self.in_.done()
if save:
self._save()
return outfile, errfile
def readouterr(self):
@ -577,7 +554,7 @@ class StdCapture(StdCaptureBase):
if self.in_:
sys.stdin = self.in_ = DontReadFromInput()
def stop_capturing(self, save=True):
def stop_capturing(self):
""" return (outfile, errfile) and stop capturing. """
outfile = errfile = None
if self.out and not self.out.closed:

View File

@ -873,25 +873,6 @@ class TestStdCapture:
pytest.raises(IOError, "sys.stdin.read()")
out, err = cap.reset()
def test_suspend_resume(self):
cap = self.getcapture(out=True, err=False, in_=False)
try:
print ("hello")
sys.stderr.write("error\n")
out, err = cap.readouterr()
cap.stop_capturing()
assert out == "hello\n"
assert not err
print ("in between")
sys.stderr.write("in between\n")
cap.start_capturing()
print ("after")
sys.stderr.write("error_after\n")
finally:
out, err = cap.reset()
assert out == "after\n"
assert not err
class TestStdCaptureFD(TestStdCapture):
pytestmark = needsosdup
@ -925,12 +906,9 @@ class TestStdCaptureFD(TestStdCapture):
@needsosdup
def test_stdcapture_fd_tmpfile(tmpfile):
capfd = capture.StdCaptureFD(out=tmpfile)
try:
os.write(1, "hello".encode("ascii"))
os.write(2, "world".encode("ascii"))
outf, errf = capfd.stop_capturing()
finally:
capfd.reset()
os.write(1, "hello".encode("ascii"))
os.write(2, "world".encode("ascii"))
outf, errf = capfd.stop_capturing()
assert outf == tmpfile