Skip to content

Commit 7cfab1a

Browse files
Add test_unclosed_interpreter_on_fork to cover gh-139759
1 parent b1e32ff commit 7cfab1a

1 file changed

Lines changed: 19 additions & 0 deletions

File tree

‎Lib/test/test_interpreters/test_stress.py‎

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import os
12
import threading
23
import unittest
34

@@ -82,6 +83,24 @@ def test_create_interpreter_no_memory(self):
8283
with support.inject_memory_error_cm(0, 1):
8384
_interpreters.create()
8485

86+
@support.requires_fork()
87+
def test_unclosed_interpreter_on_fork(self):
88+
interp = interpreters.create()
89+
interp.exec("pass")
90+
91+
fds = os.pipe()
92+
pid = os.fork()
93+
94+
if pid == 0:
95+
os.close(fds[0])
96+
os.write(fds[1], b"OK")
97+
os._exit(0)
98+
else:
99+
os.close(fds[1])
100+
self.addCleanup(os.close, fds[0])
101+
value = os.read(fds[0], 100)
102+
self.assertEqual(value, b"OK")
103+
85104

86105
if __name__ == '__main__':
87106
# Test needs to be a package, so we can do relative imports.

0 commit comments

Comments
 (0)