diff options
author | Tor Brede Vekterli <vekterli@yahoo-inc.com> | 2017-06-12 13:03:49 +0200 |
---|---|---|
committer | Tor Brede Vekterli <vekterli@yahoo-inc.com> | 2017-06-12 15:16:33 +0200 |
commit | 6b4508315257ca0ac80da1b90abb048cc7305895 (patch) | |
tree | 7e829778bf371e6a6dda0bc18d34712e36c0f108 /vespajlib | |
parent | 462be9cb41a98c630112fcaa9b997fffc1965a81 (diff) |
Add unit test for Compressor which reproduces buffer extent bug
Diffstat (limited to 'vespajlib')
-rw-r--r-- | vespajlib/src/test/java/com/yahoo/compress/LZ4CompressorTest.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/vespajlib/src/test/java/com/yahoo/compress/LZ4CompressorTest.java b/vespajlib/src/test/java/com/yahoo/compress/LZ4CompressorTest.java new file mode 100644 index 00000000000..c33dabf04da --- /dev/null +++ b/vespajlib/src/test/java/com/yahoo/compress/LZ4CompressorTest.java @@ -0,0 +1,25 @@ +// Copyright 2017 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.compress; + +import org.junit.Test; + +import java.util.Arrays; +import java.util.Optional; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +public class LZ4CompressorTest { + + @Test + public void can_compress_and_decompress_partial_buffer_range() { + byte[] toCompress = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa".getBytes(); + int compressBytes = 30; + Compressor compressor = new Compressor(); + Compressor.Compression compressed = compressor.compress(CompressionType.LZ4, toCompress, Optional.of(compressBytes)); + assertEquals(compressBytes, compressed.uncompressedSize()); + byte[] decompressed = compressor.decompress(compressed); + assertTrue(Arrays.equals(decompressed, Arrays.copyOf(toCompress, compressBytes))); + } + +} |