def test_optional_varint(): buf = Buffer() buf.write(Buffer.pack_optional_varint(1)) buf.write(Buffer.pack_optional_varint(2)) buf.write(Buffer.pack_optional_varint(None)) buf.write(Buffer.pack_optional_varint(3)) assert buf.unpack_optional_varint() == 1 assert buf.unpack_optional_varint() == 2 assert buf.unpack_optional_varint() is None assert buf.unpack_optional_varint() == 3
def encode(self) -> bytes: return (Buffer.pack_string(self.entity_name) + self.action + Buffer.pack_string(self.objective_name) + Buffer.pack_optional_varint(self.value))