Example #1
0
    def unpacks_request_header_with_raw_field(self):
        parser = BinaryParser()
        request_bytes = b'\x80\x01\x00\x03\x08\x00\x00\x00\x00\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

        header = parser.unpack_request_header(request_bytes)

        self.assertEqual(header.raw, request_bytes)
Example #2
0
    def unpacks_response_header_with_additional_fields(self):
        parser = BinaryParser()
        response_bytes = b'\x80\x01\x00\x03\x08\x00\x00\x00\x00\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

        header = parser.unpack_response_header(response_bytes)

        self.assertEqual(header.magic, 0x80)
        self.assertEqual(header.opcode, 0x01)
        self.assertEqual(header.key_length, 0x0003)
        self.assertEqual(header.extra_length, 0x08)
        self.assertEqual(header.data_type, 0x00)
        self.assertEqual(header.status, 0x0000)
        self.assertEqual(header.total_body_length, 0x0000000e)
        self.assertEqual(header.opaque, 0x00000000)
        self.assertEqual(header.cas, 0x0000000000000000)
Example #3
0
 def __init__(self, io_loop):
     self.io_loop = io_loop
     self.parser = BinaryParser()
     self.pool_repository = ProxyRepository(self.io_loop)