def test_abnormal_closure() -> None: client = Connection(CLIENT) client.receive_data(None) event = next(client.events()) assert isinstance(event, CloseConnection) assert event.code is CloseReason.ABNORMAL_CLOSURE assert client.state is ConnectionState.CLOSED
def test_unsolicited_pong() -> None: client = Connection(CLIENT) server = Connection(SERVER) payload = b"x" * 23 server.receive_data(client.send(Pong(payload=payload))) event = next(server.events()) assert isinstance(event, Pong) assert event.payload == payload
def test_frame_protocol_gets_fed_garbage() -> None: client = Connection(CLIENT) payload = b"x" * 23 frame = b"\x09" + bytearray([len(payload)]) + payload client.receive_data(frame) event = next(client.events()) assert isinstance(event, CloseConnection) assert event.code == CloseReason.PROTOCOL_ERROR
def test_data(split_message: bool) -> None: client = Connection(CLIENT) server = Connection(SERVER) data = "ƒñö®∂😎" server.receive_data( client.send(TextMessage(data=data, message_finished=not split_message))) event = next(server.events()) assert isinstance(event, TextMessage) assert event.message_finished is not split_message