|
1 | 1 | 'use strict'; |
2 | | -const common = require('../common'); |
3 | | -const zlib = require('zlib'); |
4 | | -const { inspect, promisify } = require('util'); |
5 | | -const assert = require('assert'); |
| 2 | + |
| 3 | +require('../common'); |
| 4 | + |
| 5 | +const { test } = require('node:test'); |
| 6 | +const zlib = require('node:zlib'); |
| 7 | +const { inspect, promisify } = require('node:util'); |
| 8 | +const assert = require('node:assert'); |
| 9 | + |
6 | 10 | const emptyBuffer = Buffer.alloc(0); |
7 | 11 |
|
8 | | -(async function() { |
9 | | - for (const [ compress, decompress, method ] of [ |
10 | | - [ zlib.deflateRawSync, zlib.inflateRawSync, 'raw sync' ], |
11 | | - [ zlib.deflateSync, zlib.inflateSync, 'deflate sync' ], |
12 | | - [ zlib.gzipSync, zlib.gunzipSync, 'gzip sync' ], |
13 | | - [ zlib.brotliCompressSync, zlib.brotliDecompressSync, 'br sync' ], |
14 | | - [ promisify(zlib.deflateRaw), promisify(zlib.inflateRaw), 'raw' ], |
15 | | - [ promisify(zlib.deflate), promisify(zlib.inflate), 'deflate' ], |
16 | | - [ promisify(zlib.gzip), promisify(zlib.gunzip), 'gzip' ], |
17 | | - [ promisify(zlib.brotliCompress), promisify(zlib.brotliDecompress), 'br' ], |
18 | | - ]) { |
19 | | - const compressed = await compress(emptyBuffer); |
20 | | - const decompressed = await decompress(compressed); |
21 | | - assert.deepStrictEqual( |
22 | | - emptyBuffer, decompressed, |
23 | | - `Expected ${inspect(compressed)} to match ${inspect(decompressed)} ` + |
24 | | - `to match for ${method}`); |
| 12 | +test('zlib compression and decompression with various methods', async (t) => { |
| 13 | + const methods = [ |
| 14 | + [zlib.deflateRawSync, zlib.inflateRawSync, 'raw sync'], |
| 15 | + [zlib.deflateSync, zlib.inflateSync, 'deflate sync'], |
| 16 | + [zlib.gzipSync, zlib.gunzipSync, 'gzip sync'], |
| 17 | + [zlib.brotliCompressSync, zlib.brotliDecompressSync, 'br sync'], |
| 18 | + [promisify(zlib.deflateRaw), promisify(zlib.inflateRaw), 'raw'], |
| 19 | + [promisify(zlib.deflate), promisify(zlib.inflate), 'deflate'], |
| 20 | + [promisify(zlib.gzip), promisify(zlib.gunzip), 'gzip'], |
| 21 | + [promisify(zlib.brotliCompress), promisify(zlib.brotliDecompress), 'br'], |
| 22 | + ]; |
| 23 | + |
| 24 | + for (const [compress, decompress, method] of methods) { |
| 25 | + await t.test(`should handle ${method} compression and decompression`, async () => { |
| 26 | + const compressed = await compress(emptyBuffer); |
| 27 | + const decompressed = await decompress(compressed); |
| 28 | + |
| 29 | + assert.deepStrictEqual( |
| 30 | + emptyBuffer, |
| 31 | + decompressed, |
| 32 | + `Expected ${inspect(compressed)} to match ${inspect(decompressed)} for ${method}` |
| 33 | + ); |
| 34 | + }); |
25 | 35 | } |
26 | | -})().then(common.mustCall()); |
| 36 | +}); |
0 commit comments