def test_array_elements_round_trip(element, array): generator = bitpacking.pack_array_element(element, array) b = bitpacking._pack_encode_results(list(generator)) decoder = bitpacking.BitPackDecoder(b) decoded_element = decoder.decode_element(array) assert element == decoded_element
def test_sorted_array_elements_round_trip(elements, array): generator = bitpacking.pack_sorted_array_elements(elements, array) b = bitpacking._pack_encode_results(list(generator)) decoder = bitpacking.BitPackDecoder(b) decoded_elements = bitpacking.decode_sorted_array_elements(decoder, array) assert elements == decoded_elements
def test_encode_int_with_limits_round_trip(value: int, limits: Tuple[int, ...], ): # Run data = bitpacking._pack_encode_results(list(bitpacking.encode_int_with_limits(value, limits))) decoded = bitpacking.decode_int_with_limits(bitpacking.BitPackDecoder(data), limits) # Assert assert decoded == value
def _decode_pickup(self, data: bytes) -> PickupEntry: decoder = bitpacking.BitPackDecoder(data) return BitPackPickupEntry.bit_pack_unpack(decoder, self._game.resource_database)
def _decode_pickup(d: str, resource_database): decoder = bitpacking.BitPackDecoder(base64.b85decode(d)) return BitPackPickupEntry.bit_pack_unpack(decoder, resource_database)
def _decode_pickup(data: bytes, resource_database: ResourceDatabase) -> PickupEntry: decoder = bitpacking.BitPackDecoder(data) return BitPackPickupEntry.bit_pack_unpack(decoder, resource_database)