mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-14 15:13:07 +00:00
This test proves the ability of TransformStream to execute caller supplied code in the flush callback, and have access to TransformStreamDefaultController.
25 lines
698 B
HTML
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>
|