Files
sousa-gecko/testing/web-platform/tests/compression/compression-bad-chunks.any.js
T
Anne van Kesteren 47a27e9af8 Bug 2038779 [wpt PR 59794] - Remove ShadowRealm test coverage, a=testonly
Automatic update from web-platform-tests
Remove ShadowRealm test coverage

This intentionally does not make infrastructure or documentation changes, but without implementer support all the ShadowRealm tests add significant noise. Once there is implementer support this can be reverted.

--

wpt-commits: e4a4672e9e607fc2b28e7173b83ce4e38ef53071
wpt-pr: 59794
2026-05-13 04:24:16 +00:00

58 lines
1.5 KiB
JavaScript

// META: global=window,worker
// META: script=resources/formats.js
'use strict';
const badChunks = [
{
name: 'undefined',
value: undefined
},
{
name: 'null',
value: null
},
{
name: 'numeric',
value: 3.14
},
{
name: 'object, not BufferSource',
value: {}
},
{
name: 'array',
value: [65]
},
{
name: 'SharedArrayBuffer',
// Use a getter to postpone construction so that all tests don't fail where
// SharedArrayBuffer is not yet implemented.
get value() {
// See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
return new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer;
}
},
{
name: 'shared Uint8Array',
get value() {
// See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()`
return new Uint8Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer)
}
},
];
for (const format of formats) {
for (const chunk of badChunks) {
promise_test(async t => {
const cs = new CompressionStream(format);
const reader = cs.readable.getReader();
const writer = cs.writable.getWriter();
const writePromise = writer.write(chunk.value);
const readPromise = reader.read();
await promise_rejects_js(t, TypeError, writePromise, 'write should reject');
await promise_rejects_js(t, TypeError, readPromise, 'read should reject');
}, `chunk of type ${chunk.name} should error the stream for ${format}`);
}
}