We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 97b4121 commit 6477c7eCopy full SHA for 6477c7e
Lib/test/test_asyncio/test_subprocess.py
@@ -402,6 +402,26 @@ async def empty_error():
402
self.assertEqual(output, None)
403
self.assertEqual(exitcode, 0)
404
405
+ @unittest.skipIf(sys.platform != 'linux', "Don't have /dev/stdin")
406
+ def test_devstdin_input(self):
407
+
408
+ async def devstdin_input(message):
409
+ code = 'file = open("/dev/stdin"); data = file.read(); print(len(data))'
410
+ proc = await asyncio.create_subprocess_exec(
411
+ sys.executable, '-c', code,
412
+ stdin=asyncio.subprocess.PIPE,
413
+ stdout=asyncio.subprocess.PIPE,
414
+ stderr=asyncio.subprocess.PIPE,
415
+ close_fds=False,
416
+ )
417
+ stdout, stderr = await proc.communicate(message)
418
+ exitcode = await proc.wait()
419
+ return (stdout, exitcode)
420
421
+ output, exitcode = self.loop.run_until_complete(devstdin_input(b'abc'))
422
+ self.assertEqual(output.rstrip(), b'3')
423
+ self.assertEqual(exitcode, 0)
424
425
def test_cancel_process_wait(self):
426
# Issue #23140: cancel Process.wait()
427
0 commit comments