| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 | import { testSuites } from './util';import { deflateSync, inflateSync } from '..';import { deflateRawSync, inflateRawSync } from 'zlib';import { deflateRaw, inflateRaw } from 'pako';import * as UZIP from 'uzip';import * as tinf from 'tiny-inflate';import { writeFileSync } from 'fs';import { join } from 'path';const cache: Record<string, Buffer> = {};testSuites({  'fflate compress 5x': file => {    for (let i = 0; i < 5; ++i) deflateSync(file);  },  'fflate decompress 5x': (file, name, resetTimer) => {    cache[name] = deflateRawSync(file), resetTimer();    for (let i = 0; i < 5; ++i) {      inflateSync(cache[name]);    }  },  'pako compress 5x': file => {    for (let i = 0; i < 5; ++i) deflateRaw(file);  },  'pako decompress 5x': (_, name) => {    for (let i = 0; i < 5; ++i) inflateRaw(cache[name]);  },  'uzip compress 5x': file => {    for (let i = 0; i < 5; ++i) UZIP.deflateRaw(file);  },  'uzip decompress 5x': (_, name) => {    for (let i = 0; i < 5; ++i) UZIP.inflateRaw(cache[name]);  },  'tiny-inflate decompress 5x': (file, name) => {    for (let i = 0; i < 5; ++i) tinf(cache[name], new Uint8Array(file.length));  },  'zlib compress 5x': file => {    for (let i = 0; i < 5; ++i) deflateRawSync(file);  },  'zlib decompress 5x': (_, name) => {    for (let i = 0; i < 5; ++i) inflateRawSync(cache[name]);  }}).then(perf => {  writeFileSync(join(__dirname, 'results', 'multiTimings.json'), JSON.stringify(perf, null, 2));})
 |