def get_frame_info_check(compressed_data, source_size, store_size, block_size, block_linked, content_checksum, block_checksum): frame_info = lz4frame.get_frame_info(compressed_data) assert frame_info["content_checksum"] == content_checksum assert frame_info["block_checksum"] == block_checksum assert frame_info["skippable"] is False if store_size is True: assert frame_info["content_size"] == source_size else: assert frame_info["content_size"] == 0 if source_size > frame_info['block_size']: # More than a single block assert frame_info["block_linked"] == block_linked if block_size == lz4frame.BLOCKSIZE_DEFAULT: assert frame_info["block_size_id"] == lz4frame.BLOCKSIZE_MAX64KB else: assert frame_info["block_size_id"] == block_size
def test_compress_without_content_size(self): input_data = b"2099023098234882923049823094823094898239230982349081231290381209380981203981209381238901283098908123109238098123" compressed = lz4frame.compress(input_data, content_size_header=False) frame = lz4frame.get_frame_info(compressed) self.assertEqual(frame['contentSize'], 0) decompressed = lz4frame.decompress(compressed) self.assertEqual(input_data, decompressed)
def test_get_frame_info(self): input_data = b"2099023098234882923049823094823094898239230982349081231290381209380981203981209381238901283098908123109238098123" compressed = lz4frame.compress(input_data, lz4frame.COMPRESSIONLEVEL_MAX, lz4frame.BLOCKSIZE_MAX64KB, lz4frame.CONTENTCHECKSUM_DISABLED, lz4frame.BLOCKMODE_INDEPENDENT, lz4frame.FRAMETYPE_FRAME) frame_info = lz4frame.get_frame_info(compressed) self.assertEqual( frame_info, { "blockSizeID": lz4frame.BLOCKSIZE_MAX64KB, "blockMode": lz4frame.BLOCKMODE_INDEPENDENT, "contentChecksumFlag": lz4frame.CONTENTCHECKSUM_DISABLED, "frameType": lz4frame.FRAMETYPE_FRAME, "contentSize": len(input_data) })