]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Modified existing RLE test to take compressed size into account
authorSen Huang <senhuang96@fb.com>
Fri, 15 Nov 2019 17:26:48 +0000 (12:26 -0500)
committerSen Huang <senhuang96@fb.com>
Fri, 15 Nov 2019 17:26:48 +0000 (12:26 -0500)
tests/fuzzer.c

index 88f3b83f834c38269884d516f7d48e89766391b2..e757daaba899f0b4484bc5dd2e474ce409004c00 100644 (file)
@@ -1999,14 +1999,14 @@ static int basicUnitTests(U32 const seed, double compressibility)
 
     /* long rle test */
     {   size_t sampleSize = 0;
+        size_t expectedCompressedSize = 39; /* two RLE blocks, zstd 1.4.4 */
         DISPLAYLEVEL(3, "test%3i : Long RLE test : ", testNb++);
-        RDG_genBuffer(CNBuffer, sampleSize, compressibility, 0., seed+1);
         memset((char*)CNBuffer+sampleSize, 'B', 256 KB - 1);
         sampleSize += 256 KB - 1;
-        RDG_genBuffer((char*)CNBuffer+sampleSize, 96 KB, compressibility, 0., seed+2);
+        memset((char*)CNBuffer+sampleSize, 'A', 96 KB);
         sampleSize += 96 KB;
         cSize = ZSTD_compress(compressedBuffer, ZSTD_compressBound(sampleSize), CNBuffer, sampleSize, 1);
-        if (ZSTD_isError(cSize)) goto _output_error;
+        if (ZSTD_isError(cSize) || cSize > expectedCompressedSize * 1.1) goto _output_error;
         { CHECK_NEWV(regenSize, ZSTD_decompress(decodedBuffer, sampleSize, compressedBuffer, cSize));
           if (regenSize!=sampleSize) goto _output_error; }
         DISPLAYLEVEL(3, "OK \n");