diff --git a/conftest.py b/conftest.py new file mode 100644 index 0000000..d2a13ae --- /dev/null +++ b/conftest.py @@ -0,0 +1,23 @@ +# flake8: noqa +import sys + +import pytest + + +@pytest.fixture +def capture_stdpipe(monkeypatch): + stream_buf = {"stdout": "", "stderr": "", "writes": 0} + + def mimic_stdout(chars): + stream_buf['stdout'] += chars + stream_buf['writes'] += 1 + + def mimic_stderr(chars): + stream_buf['stderr'] += chars + stream_buf['writes'] += 1 + + + monkeypatch.setattr(sys.stdout, 'write', mimic_stdout) + monkeypatch.setattr(sys.stderr, 'write', mimic_stderr) + + return stream_buf \ No newline at end of file