Skip to content

Commit 044fed5

Browse files
committed
Close mocked stdout/stderr handles
1 parent a321111 commit 044fed5

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

easybuild/base/testing.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ def setUp(self):
139139

140140
self.orig_sys_stdout = sys.stdout
141141
self.orig_sys_stderr = sys.stderr
142+
self.stdout_std_err_buffers = []
142143

143144
def convert_exception_to_str(self, err):
144145
"""Convert an Exception instance to a string."""
@@ -182,6 +183,7 @@ def mock_stdout(self, enable):
182183
sys.stdout.flush()
183184
if enable:
184185
sys.stdout = StringIO()
186+
self.stdout_std_err_buffers.append(sys.stdout)
185187
else:
186188
sys.stdout = self.orig_sys_stdout
187189

@@ -190,6 +192,7 @@ def mock_stderr(self, enable):
190192
sys.stderr.flush()
191193
if enable:
192194
sys.stderr = StringIO()
195+
self.stdout_std_err_buffers.append(sys.stderr)
193196
else:
194197
sys.stderr = self.orig_sys_stderr
195198

@@ -235,4 +238,6 @@ def tearDown(self):
235238
"""Cleanup after running a test."""
236239
self.mock_stdout(False)
237240
self.mock_stderr(False)
241+
for buf in self.stdout_std_err_buffers:
242+
buf.close()
238243
super().tearDown()

0 commit comments

Comments
 (0)