Exemple #1
0
    def test_write_to_closed_stream(self):
        stream = ReceiveStream(1)

        assert stream.buffer.empty()
        stream.close()
        stream.write(b"\x00\x00\x00")
        assert stream.buffer.empty()
Exemple #2
0
    def test_write_multiple_messages(self):
        stream = ReceiveStream(1)
        for _ in range(10):
            stream.write(
                b"\x00\x00\x00\x00\x01\xff")  # 10 single byte messages

        assert stream.queue.qsize() == 10
        assert len(stream.buffer) == 0
Exemple #3
0
 def test_write_more_bytes_than_one_message(self):
     stream = ReceiveStream(1)
     # incompressed single byte message, followed by two more bytes of /xff
     stream.write(b"\x00\x00\x00\x00\x01\xff\xff\xff")
     # single byte message is queued
     assert stream.queue.get() == (False, b"\xff")
     # following two bytes remain in the buffer
     assert stream.buffer.peek() == b"\xff\xff"
Exemple #4
0
    def test_write_less_bytes_than_one_message(self):
        stream = ReceiveStream(1)
        stream.write(b"\x00\x00\x00\x01\x00\xff\xff\xff")

        assert stream.queue.empty()
        assert stream.buffer.peek() == b"\x00\x00\x00\x01\x00\xff\xff\xff"
Exemple #5
0
    def test_write_less_bytes_than_header(self):
        stream = ReceiveStream(1)
        stream.write(b"\x00\x00\x00")

        assert stream.queue.empty()
        assert stream.buffer.peek() == b"\x00\x00\x00"