39 lines
857 B
Python
39 lines
857 B
Python
# Copyright (c) Twisted Matrix Laboratories.
|
|
# See LICENSE for details.
|
|
|
|
"""
|
|
Script used by twisted.test.test_process on win32.
|
|
"""
|
|
|
|
from __future__ import absolute_import, division
|
|
|
|
import sys, os, msvcrt
|
|
msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
|
|
msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY)
|
|
|
|
# We want to write bytes directly to the output, not text, because otherwise
|
|
# newlines get mangled. Get the buffer if it is available.
|
|
if hasattr(sys.stdout, "buffer"):
|
|
stdout = sys.stdout.buffer
|
|
else:
|
|
stdout = sys.stdout
|
|
|
|
if hasattr(sys.stderr, "buffer"):
|
|
stderr = sys.stderr.buffer
|
|
else:
|
|
stderr = sys.stderr
|
|
|
|
stdout.write(b"out\n")
|
|
stdout.flush()
|
|
stderr.write(b"err\n")
|
|
stderr.flush()
|
|
|
|
data = sys.stdin.read()
|
|
|
|
stdout.write(data.encode('ascii'))
|
|
stdout.write(b"\nout\n")
|
|
stderr.write(b"err\n")
|
|
|
|
sys.stdout.flush()
|
|
sys.stderr.flush()
|