rename StdCaptureBase to MultiCapture
This commit is contained in:
		
							parent
							
								
									95cc114b34
								
							
						
					
					
						commit
						69cbac8fb5
					
				|  | @ -81,11 +81,11 @@ class CaptureManager: | |||
| 
 | ||||
|     def _getcapture(self, method): | ||||
|         if method == "fd": | ||||
|             return StdCaptureBase(out=True, err=True, Capture=FDCapture) | ||||
|             return MultiCapture(out=True, err=True, Capture=FDCapture) | ||||
|         elif method == "sys": | ||||
|             return StdCaptureBase(out=True, err=True, Capture=SysCapture) | ||||
|             return MultiCapture(out=True, err=True, Capture=SysCapture) | ||||
|         elif method == "no": | ||||
|             return StdCaptureBase(out=False, err=False, in_=False) | ||||
|             return MultiCapture(out=False, err=False, in_=False) | ||||
|         else: | ||||
|             raise ValueError("unknown capturing method: %r" % method) | ||||
| 
 | ||||
|  | @ -235,7 +235,7 @@ class CaptureFixture: | |||
|         self.captureclass = captureclass | ||||
| 
 | ||||
|     def _start(self): | ||||
|         self._capture = StdCaptureBase(out=True, err=True, in_=False, | ||||
|         self._capture = MultiCapture(out=True, err=True, in_=False, | ||||
|                                        Capture=self.captureclass) | ||||
|         self._capture.start_capturing() | ||||
| 
 | ||||
|  | @ -289,7 +289,7 @@ class EncodedFile(object): | |||
|         return getattr(self.buffer, name) | ||||
| 
 | ||||
| 
 | ||||
| class StdCaptureBase(object): | ||||
| class MultiCapture(object): | ||||
|     out = err = in_ = None | ||||
| 
 | ||||
|     def __init__(self, out=True, err=True, in_=True, Capture=None): | ||||
|  |  | |||
|  | @ -46,10 +46,10 @@ def oswritebytes(fd, obj): | |||
| 
 | ||||
| 
 | ||||
| def StdCaptureFD(out=True, err=True, in_=True): | ||||
|     return capture.StdCaptureBase(out, err, in_, Capture=capture.FDCapture) | ||||
|     return capture.MultiCapture(out, err, in_, Capture=capture.FDCapture) | ||||
| 
 | ||||
| def StdCapture(out=True, err=True, in_=True): | ||||
|     return capture.StdCaptureBase(out, err, in_, Capture=capture.SysCapture) | ||||
|     return capture.MultiCapture(out, err, in_, Capture=capture.SysCapture) | ||||
| 
 | ||||
| 
 | ||||
| class TestCaptureManager: | ||||
|  | @ -918,7 +918,7 @@ class TestStdCaptureFDinvalidFD: | |||
|             import os | ||||
|             from _pytest import capture | ||||
|             def StdCaptureFD(out=True, err=True, in_=True): | ||||
|                 return capture.StdCaptureBase(out, err, in_, | ||||
|                 return capture.MultiCapture(out, err, in_, | ||||
|                                               Capture=capture.FDCapture) | ||||
|             def test_stdout(): | ||||
|                 os.close(1) | ||||
|  | @ -958,6 +958,25 @@ def test_fdcapture_tmpfile_remains_the_same(tmpfile, use): | |||
|     capfile2 = cap.err.tmpfile | ||||
|     assert capfile2 == capfile | ||||
| 
 | ||||
| @needsosdup | ||||
| def test_close_and_capture_again(testdir): | ||||
|     testdir.makepyfile(""" | ||||
|         import os | ||||
|         def test_close(): | ||||
|             os.close(1) | ||||
|         def test_capture_again(): | ||||
|             os.write(1, "hello\\n") | ||||
|             assert 0 | ||||
|     """) | ||||
|     result = testdir.runpytest() | ||||
|     result.stdout.fnmatch_lines(""" | ||||
|         *test_capture_again* | ||||
|         *assert 0* | ||||
|         *stdout* | ||||
|         *hello* | ||||
|     """) | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| @pytest.mark.parametrize('method', ['SysCapture', 'FDCapture']) | ||||
| def test_capturing_and_logging_fundamentals(testdir, method): | ||||
|  | @ -968,7 +987,7 @@ def test_capturing_and_logging_fundamentals(testdir, method): | |||
|         import sys, os | ||||
|         import py, logging | ||||
|         from _pytest import capture | ||||
|         cap = capture.StdCaptureBase(out=False, in_=False, | ||||
|         cap = capture.MultiCapture(out=False, in_=False, | ||||
|                                      Capture=capture.%s) | ||||
|         cap.start_capturing() | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue