fixed zbufftest :
This commit is contained in:
parent
8e3a36a6db
commit
202844ebd0
@ -125,7 +125,7 @@ ZBUFF_CCtx* ZBUFF_createCCtx_advanced(ZSTD_customMem customMem)
|
|||||||
zbc = (ZBUFF_CCtx*)customMem.customAlloc(sizeof(ZBUFF_CCtx));
|
zbc = (ZBUFF_CCtx*)customMem.customAlloc(sizeof(ZBUFF_CCtx));
|
||||||
if (zbc==NULL) return NULL;
|
if (zbc==NULL) return NULL;
|
||||||
memset(zbc, 0, sizeof(ZBUFF_CCtx));
|
memset(zbc, 0, sizeof(ZBUFF_CCtx));
|
||||||
zbc->customAlloc = customMem.customAlloc;
|
zbc->customAlloc = customMem.customAlloc;
|
||||||
zbc->customFree = customMem.customFree;
|
zbc->customFree = customMem.customFree;
|
||||||
zbc->zc = ZSTD_createCCtx_advanced(customMem);
|
zbc->zc = ZSTD_createCCtx_advanced(customMem);
|
||||||
return zbc;
|
return zbc;
|
||||||
@ -180,6 +180,7 @@ size_t ZBUFF_compressInit_advanced(ZBUFF_CCtx* zbc,
|
|||||||
size_t ZBUFF_compressInitDictionary(ZBUFF_CCtx* zbc, const void* dict, size_t dictSize, int compressionLevel)
|
size_t ZBUFF_compressInitDictionary(ZBUFF_CCtx* zbc, const void* dict, size_t dictSize, int compressionLevel)
|
||||||
{
|
{
|
||||||
ZSTD_parameters params;
|
ZSTD_parameters params;
|
||||||
|
memset(¶ms, 0, sizeof(params));
|
||||||
params.cParams = ZSTD_getCParams(compressionLevel, 0, dictSize);
|
params.cParams = ZSTD_getCParams(compressionLevel, 0, dictSize);
|
||||||
params.fParams.contentSizeFlag = 0;
|
params.fParams.contentSizeFlag = 0;
|
||||||
ZSTD_adjustCParams(¶ms.cParams, 0, dictSize);
|
ZSTD_adjustCParams(¶ms.cParams, 0, dictSize);
|
||||||
|
@ -1104,6 +1104,7 @@ size_t ZSTD_decompressContinue(ZSTD_DCtx* dctx, void* dst, size_t dstCapacity, c
|
|||||||
dctx->stage = ZSTDds_decodeBlockHeader;
|
dctx->stage = ZSTDds_decodeBlockHeader;
|
||||||
dctx->expected = ZSTD_blockHeaderSize;
|
dctx->expected = ZSTD_blockHeaderSize;
|
||||||
dctx->previousDstEnd = (char*)dst + rSize;
|
dctx->previousDstEnd = (char*)dst + rSize;
|
||||||
|
if (ZSTD_isError(rSize)) return rSize;
|
||||||
if (dctx->fParams.checksumFlag) XXH64_update(&dctx->xxhState, dst, rSize);
|
if (dctx->fParams.checksumFlag) XXH64_update(&dctx->xxhState, dst, rSize);
|
||||||
return rSize;
|
return rSize;
|
||||||
}
|
}
|
||||||
|
@ -97,7 +97,7 @@ static U32 FUZ_GetMilliStart(void)
|
|||||||
|
|
||||||
static U32 FUZ_GetMilliSpan(U32 nTimeStart)
|
static U32 FUZ_GetMilliSpan(U32 nTimeStart)
|
||||||
{
|
{
|
||||||
U32 nCurrent = FUZ_GetMilliStart();
|
U32 const nCurrent = FUZ_GetMilliStart();
|
||||||
U32 nSpan = nCurrent - nTimeStart;
|
U32 nSpan = nCurrent - nTimeStart;
|
||||||
if (nTimeStart > nCurrent)
|
if (nTimeStart > nCurrent)
|
||||||
nSpan += 0x100000 * 1000;
|
nSpan += 0x100000 * 1000;
|
||||||
@ -148,10 +148,10 @@ static int basicUnitTests(U32 seed, double compressibility, ZSTD_customMem custo
|
|||||||
size_t CNBufferSize = COMPRESSIBLE_NOISE_LENGTH;
|
size_t CNBufferSize = COMPRESSIBLE_NOISE_LENGTH;
|
||||||
void* CNBuffer = malloc(CNBufferSize);
|
void* CNBuffer = malloc(CNBufferSize);
|
||||||
size_t const compressedBufferSize = ZSTD_compressBound(COMPRESSIBLE_NOISE_LENGTH);
|
size_t const compressedBufferSize = ZSTD_compressBound(COMPRESSIBLE_NOISE_LENGTH);
|
||||||
void* compressedBuffer = malloc(compressedBufferSize);
|
void* const compressedBuffer = malloc(compressedBufferSize);
|
||||||
size_t const decodedBufferSize = CNBufferSize;
|
size_t const decodedBufferSize = CNBufferSize;
|
||||||
void* decodedBuffer = malloc(decodedBufferSize);
|
void* const decodedBuffer = malloc(decodedBufferSize);
|
||||||
size_t result, cSize, readSize, genSize;
|
size_t cSize, readSize, genSize;
|
||||||
U32 testNb=0;
|
U32 testNb=0;
|
||||||
ZBUFF_CCtx* zc = ZBUFF_createCCtx_advanced(customMem);
|
ZBUFF_CCtx* zc = ZBUFF_createCCtx_advanced(customMem);
|
||||||
ZBUFF_DCtx* zd = ZBUFF_createDCtx_advanced(customMem);
|
ZBUFF_DCtx* zd = ZBUFF_createDCtx_advanced(customMem);
|
||||||
@ -168,13 +168,13 @@ static int basicUnitTests(U32 seed, double compressibility, ZSTD_customMem custo
|
|||||||
ZBUFF_compressInitDictionary(zc, CNBuffer, 128 KB, 1);
|
ZBUFF_compressInitDictionary(zc, CNBuffer, 128 KB, 1);
|
||||||
readSize = CNBufferSize;
|
readSize = CNBufferSize;
|
||||||
genSize = compressedBufferSize;
|
genSize = compressedBufferSize;
|
||||||
result = ZBUFF_compressContinue(zc, compressedBuffer, &genSize, CNBuffer, &readSize);
|
{ size_t const r = ZBUFF_compressContinue(zc, compressedBuffer, &genSize, CNBuffer, &readSize);
|
||||||
if (ZBUFF_isError(result)) goto _output_error;
|
if (ZBUFF_isError(r)) goto _output_error; }
|
||||||
if (readSize != CNBufferSize) goto _output_error; /* entire input should be consumed */
|
if (readSize != CNBufferSize) goto _output_error; /* entire input should be consumed */
|
||||||
cSize = genSize;
|
cSize = genSize;
|
||||||
genSize = compressedBufferSize - cSize;
|
genSize = compressedBufferSize - cSize;
|
||||||
result = ZBUFF_compressEnd(zc, ((char*)compressedBuffer)+cSize, &genSize);
|
{ size_t const r = ZBUFF_compressEnd(zc, ((char*)compressedBuffer)+cSize, &genSize);
|
||||||
if (result != 0) goto _output_error; /* error, or some data not flushed */
|
if (r != 0) goto _output_error; } /*< error, or some data not flushed */
|
||||||
cSize += genSize;
|
cSize += genSize;
|
||||||
DISPLAYLEVEL(4, "OK (%u bytes : %.2f%%)\n", (U32)cSize, (double)cSize/COMPRESSIBLE_NOISE_LENGTH*100);
|
DISPLAYLEVEL(4, "OK (%u bytes : %.2f%%)\n", (U32)cSize, (double)cSize/COMPRESSIBLE_NOISE_LENGTH*100);
|
||||||
|
|
||||||
@ -183,8 +183,8 @@ static int basicUnitTests(U32 seed, double compressibility, ZSTD_customMem custo
|
|||||||
ZBUFF_decompressInitDictionary(zd, CNBuffer, 128 KB);
|
ZBUFF_decompressInitDictionary(zd, CNBuffer, 128 KB);
|
||||||
readSize = cSize;
|
readSize = cSize;
|
||||||
genSize = CNBufferSize;
|
genSize = CNBufferSize;
|
||||||
result = ZBUFF_decompressContinue(zd, decodedBuffer, &genSize, compressedBuffer, &readSize);
|
{ size_t const r = ZBUFF_decompressContinue(zd, decodedBuffer, &genSize, compressedBuffer, &readSize);
|
||||||
if (result != 0) goto _output_error; /* should reach end of frame == 0; otherwise, some data left, or an error */
|
if (r != 0) goto _output_error; } /* should reach end of frame == 0; otherwise, some data left, or an error */
|
||||||
if (genSize != CNBufferSize) goto _output_error; /* should regenerate the same amount */
|
if (genSize != CNBufferSize) goto _output_error; /* should regenerate the same amount */
|
||||||
if (readSize != cSize) goto _output_error; /* should have read the entire frame */
|
if (readSize != cSize) goto _output_error; /* should have read the entire frame */
|
||||||
DISPLAYLEVEL(4, "OK \n");
|
DISPLAYLEVEL(4, "OK \n");
|
||||||
@ -600,9 +600,10 @@ int main(int argc, const char** argv)
|
|||||||
|
|
||||||
if (testNb==0) {
|
if (testNb==0) {
|
||||||
result = basicUnitTests(0, ((double)proba) / 100, customNULL); /* constant seed for predictability */
|
result = basicUnitTests(0, ((double)proba) / 100, customNULL); /* constant seed for predictability */
|
||||||
if (!result)
|
if (!result) {
|
||||||
|
DISPLAYLEVEL(4, "Unit tests using customMem :\n")
|
||||||
result = basicUnitTests(0, ((double)proba) / 100, customMem); /* use custom memory allocation functions */
|
result = basicUnitTests(0, ((double)proba) / 100, customMem); /* use custom memory allocation functions */
|
||||||
}
|
} }
|
||||||
|
|
||||||
if (!result)
|
if (!result)
|
||||||
result = fuzzerTests(seed, nbTests, testNb, ((double)proba) / 100);
|
result = fuzzerTests(seed, nbTests, testNb, ((double)proba) / 100);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user