diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2010-04-10 22:43:05 +0000 |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2010-04-10 22:43:05 +0000 |
commit | 16e026cc943460b83a08c058ba4e87c5abf36215 (patch) | |
tree | 77a5692e5b8369dbfc2cb99634f8d844020bf582 /Lib/test/test_posix.py | |
parent | cdd98fb4634f6d3fc0815bfe490e1076e8b6ee9e (diff) | |
download | cpython-git-16e026cc943460b83a08c058ba4e87c5abf36215.tar.gz |
Temporary commit of fix to issue #5380 (in order to watch buildbot response)
Diffstat (limited to 'Lib/test/test_posix.py')
-rw-r--r-- | Lib/test/test_posix.py | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index afeb616ddc..3caf82493f 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -280,11 +280,29 @@ class PosixTester(unittest.TestCase): if hasattr(posix, 'strerror'): self.assertTrue(posix.strerror(0)) + def check_pipe_func(self, pipe_func): + master_fd, slave_fd = pipe_func() + try: + # Simulate a subprocess writing some data to the + # slave end of the pipe, and then exiting. + data = b'TEST DATA' + try: + os.write(slave_fd, data) + finally: + os.close(slave_fd) + # Request more data than available + gotdata = os.read(master_fd, len(data) + 1) + self.assertEqual(gotdata, data) + finally: + os.close(master_fd) + def test_pipe(self): if hasattr(posix, 'pipe'): - reader, writer = posix.pipe() - os.close(reader) - os.close(writer) + self.check_pipe_func(posix.pipe) + + def test_openpty(self): + if hasattr(posix, 'openpty'): + self.check_pipe_func(posix.openpty) def test_tempnam(self): if hasattr(posix, 'tempnam'): |