Fix send and receive of ACK byte in test infrastructure for Python 3.5

Python 3.5 is pickier about the distinction between chars and bytes (and strings and bytearrays) than Python 2.7.

Differential Revision: http://reviews.llvm.org/D19510

llvm-svn: 267562
This commit is contained in:
Adrian McCarthy 2016-04-26 15:15:29 +00:00
parent 0937a7d814
commit d285007720
2 changed files with 2 additions and 6 deletions

View File

@ -59,8 +59,7 @@ class UnpicklingForwardingReaderChannel(asyncore.dispatcher):
# the initiators of the socket to await this to ensure
# that this end is up and running (and therefore already
# into the async map).
ack_bytes = bytearray()
ack_bytes.append(chr(42))
ack_bytes = b'*'
file_object.send(ack_bytes)
def deserialize_payload(self):

View File

@ -40,9 +40,6 @@ class CreatedFormatter(object):
self.cleanup_func = cleanup_func
SOCKET_ACK_BYTE_VALUE = b'*' # ASCII for chr(42)
def create_results_formatter(config):
"""Sets up a test results formatter.
@ -78,7 +75,7 @@ def create_results_formatter(config):
# listener socket gets spun up; otherwise,
# we lose the test result info.
read_bytes = sock.recv(1)
if read_bytes is None or (len(read_bytes) < 1) or (read_bytes[0] != SOCKET_ACK_BYTE_VALUE):
if read_bytes is None or (len(read_bytes) < 1) or (read_bytes != b'*'):
raise Exception("listening socket did not respond with ack byte: response={}".format(read_bytes))
return sock, lambda: socket_closer(sock)