summaryrefslogtreecommitdiff
path: root/pylint/testutils/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'pylint/testutils/utils.py')
-rw-r--r--pylint/testutils/utils.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/pylint/testutils/utils.py b/pylint/testutils/utils.py
index dbd75d6b8..36771ea39 100644
--- a/pylint/testutils/utils.py
+++ b/pylint/testutils/utils.py
@@ -4,7 +4,22 @@
from __future__ import annotations
+import contextlib
import os
+import sys
+from collections.abc import Iterator
+from typing import TextIO
+
+
+@contextlib.contextmanager
+def _patch_streams(out: TextIO) -> Iterator[None]:
+ """Patch and subsequently reset a text stream."""
+ sys.stderr = sys.stdout = out
+ try:
+ yield
+ finally:
+ sys.stderr = sys.__stderr__
+ sys.stdout = sys.__stdout__
def create_files(paths: list[str], chroot: str = ".") -> None: