def test_redirect_input(): loop = pyuv.Loop.default_loop() monitored = [] def cb(evtype, info): monitored.append(info['data']) if sys.platform == 'win32': p = Process(loop, "someid", "echo", "cmd.exe", args=["/c", "proc_stdin_stdout.py"], redirect_output=["stdout"], redirect_input=True) else: p = Process(loop, "someid", "echo", "./proc_stdin_stdout.py", cwd=os.path.dirname(__file__), redirect_output=["stdout"], redirect_input=True) p.spawn() time.sleep(0.2) p.monitor_io("stdout", cb) p.write(b"ECHO" + linesep) def stop(handle): p.unmonitor_io("stdout", cb) p.stop() t = pyuv.Timer(loop) t.start(stop, 0.3, 0.0) loop.run() assert len(monitored) == 1 assert monitored == [b'ECHO\n\n']