| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- import { testSuites, workers, bClone, TestHandler } from './util';
 
- import { writeFileSync } from 'fs';
 
- import { join } from 'path';
 
- const preprocessors = {
 
-   inflate: workers.zlib.deflate,
 
-   gunzip: workers.zlib.gzip,
 
-   unzlib: workers.zlib.zlib
 
- };
 
- const cache: Record<string, Record<string, Buffer>> = {
 
-   deflate: {},
 
-   inflate: {},
 
-   gzip: {},
 
-   gunzip: {},
 
-   zlib: {},
 
-   unzlib: {}
 
- };
 
- const flattenedWorkers: Record<string, TestHandler> = {};
 
- for (const k in workers) {
 
-   for (const l in workers[k]) {
 
-     if (l == 'zip' || l == 'unzip') continue;
 
-     flattenedWorkers[k + '.' + l] = async (file, name, resetTimer) => {
 
-       const fileClone = bClone(file);
 
-       let buf = fileClone;
 
-       if (preprocessors[l]) {
 
-         buf = bClone(cache[l][name] ||= Buffer.from(
 
-           await preprocessors[l as keyof typeof preprocessors](buf, [buf.buffer])
 
-         ));
 
-         resetTimer();
 
-       }
 
-       const opt2 = preprocessors[l]
 
-         ? k === 'tinyInflate'
 
-           ? new Uint8Array(file.length)
 
-           : null
 
-         : { level: 1 };
 
-       await workers[k][l]([buf, opt2], opt2 instanceof Uint8Array
 
-         ? [buf.buffer, opt2.buffer]
 
-         : [buf.buffer]);
 
-     }
 
-   }
 
- }
 
- testSuites(flattenedWorkers).then(perf => {
 
-   writeFileSync(join(__dirname, 'results', 'timings.json'), JSON.stringify(perf, null, 2));
 
- });
 
 
  |