Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /fetch/api/response/response-stream-bad-chunk.any.html - WPT Dashboard Interop Dashboard
- /fetch/api/response/response-stream-bad-chunk.any.serviceworker.html - WPT Dashboard Interop Dashboard
- /fetch/api/response/response-stream-bad-chunk.any.sharedworker.html - WPT Dashboard Interop Dashboard
- /fetch/api/response/response-stream-bad-chunk.any.worker.html - WPT Dashboard Interop Dashboard
// META: global=window,worker
// META: title=Response causes TypeError from bad chunk type
function runChunkTest(responseReaderMethod, testDescription) {
promise_test(test => {
let stream = new ReadableStream({
start(controller) {
controller.enqueue("not Uint8Array");
controller.close();
}
});
return promise_rejects_js(test, TypeError,
new Response(stream)[responseReaderMethod](),
'TypeError should propagate'
)
}, testDescription)
}
runChunkTest('arrayBuffer', 'ReadableStream with non-Uint8Array chunk passed to Response.arrayBuffer() causes TypeError');
runChunkTest('blob', 'ReadableStream with non-Uint8Array chunk passed to Response.blob() causes TypeError');
runChunkTest('bytes', 'ReadableStream with non-Uint8Array chunk passed to Response.bytes() causes TypeError');
runChunkTest('formData', 'ReadableStream with non-Uint8Array chunk passed to Response.formData() causes TypeError');
runChunkTest('json', 'ReadableStream with non-Uint8Array chunk passed to Response.json() causes TypeError');
runChunkTest('text', 'ReadableStream with non-Uint8Array chunk passed to Response.text() causes TypeError');