file_check-binary-messages_wsh.py (778B)
1 from mod_pywebsocket import msgutil 2 3 4 def web_socket_do_extra_handshake(request): 5 pass # Always accept. 6 7 8 def web_socket_transfer_data(request): 9 expected_messages = ["Hello, world!", "", all_distinct_bytes()] 10 11 for test_number, expected_message in enumerate(expected_messages): 12 expected_message = expected_message.encode("latin-1") 13 message = msgutil.receive_message(request) 14 if message == expected_message: 15 msgutil.send_message(request, f"PASS: Message #{test_number:d}.") 16 else: 17 msgutil.send_message( 18 request, 19 f"FAIL: Message #{test_number:d}: Received unexpected message: {message!r}", 20 ) 21 22 23 def all_distinct_bytes(): 24 return "".join([chr(i) for i in range(256)])