ladybird/Tests/LibWeb/Text/input/Streams/TransformStream-flush-callback.html
Kenneth Myhra 221f18f72e Tests/LibWeb: Add TransformStream flush callback test
This test proves the ability of TransformStream to execute
caller supplied code in the flush callback, and have access to
TransformStreamDefaultController.
2023-07-15 11:59:39 +02:00

25 lines
698 B
HTML

<script src="../include.js"></script>
<script>
test(() => {
const {writable, readable} = new TransformStream({
transform(chunk, controller) {
controller.enqueue(chunk.toUpperCase());
},
flush(controller) {
controller.enqueue("Enqueued in flush, this the last chunk that will be processed.");
}
});
const writer = writable.getWriter();
writer.write("Hello, world!");
writer.close();
const reader = readable.getReader();
reader.read().then(function processText({done, value}) {
println(`Done: ${done}`);
if (done)
return;
println(value);
reader.read().then(processText);
});
});
</script>