current commit
260306.11 · test: update WPT compression to ae05f5cb53
// META: global=window,worker,shadowrealm

'use strict';

const emptyValues = [
  ["gzip", new Uint8Array([31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0])],
  ["deflate", new Uint8Array([120, 156, 3, 0, 0, 0, 0, 1])],
  ["deflate-raw", new Uint8Array([1, 0, 0, 255, 255])],
  ["brotli", new Uint8Array([0xa1, 0x01])],
];

for (const [format, emptyValue] of emptyValues) {
  promise_test(async t => {
    const ds = new DecompressionStream(format);
    const reader = ds.readable.getReader();
    const writer = ds.writable.getWriter();
    const writePromise = writer.write(emptyValue);
    writer.close();
    const { value, done } = await reader.read();
    assert_true(done, "read() should set done");
    assert_equals(value, undefined, "value should be undefined");
    await writePromise;
  }, `decompressing ${format} empty input should work`);
}