SF patch# 1764815 by Paul Colomiets.

Fix for test_socketserver.
Use io.BytesIO instead of io.StringIO, and adjust tests.
This commit is contained in:
Guido van Rossum 2007-08-03 19:03:39 +00:00
parent ad8d30092c
commit 15863ea07a
2 changed files with 6 additions and 6 deletions

View File

@ -574,10 +574,10 @@ class DatagramRequestHandler(BaseRequestHandler):
"""Define self.rfile and self.wfile for datagram sockets."""
def setup(self):
from io import StringIO
from io import BytesIO
self.packet, self.socket = self.request
self.rfile = StringIO(self.packet)
self.wfile = StringIO()
self.rfile = BytesIO(self.packet)
self.wfile = BytesIO()
def finish(self):
self.socket.sendto(self.wfile.getvalue(), self.client_address)

View File

@ -38,7 +38,7 @@ class MyMixinServer:
self.server_close()
raise
teststring = "hello world\n"
teststring = b"hello world\n"
def receive(sock, n, timeout=20):
r, w, x = select.select([sock], [], [], timeout)
@ -51,7 +51,7 @@ def testdgram(proto, addr):
s = socket.socket(proto, socket.SOCK_DGRAM)
s.sendto(teststring, addr)
buf = data = receive(s, 100)
while data and '\n' not in buf:
while data and b'\n' not in buf:
data = receive(s, 100)
buf += data
verify(buf == teststring)
@ -62,7 +62,7 @@ def teststream(proto, addr):
s.connect(addr)
s.sendall(teststring)
buf = data = receive(s, 100)
while data and '\n' not in buf:
while data and b'\n' not in buf:
data = receive(s, 100)
buf += data
verify(buf == teststring)