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)
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)
def __init__(self, io_loop): self.io_loop = io_loop self.parser = BinaryParser() self.pool_repository = ProxyRepository(self.io_loop)