// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. import { assertEquals } from "@std/assert"; import { writerFromStreamWriter } from "./writer_from_stream_writer.ts"; Deno.test("writerFromStreamWriter()", async function () { const written: string[] = []; const chunks: string[] = ["hello", "deno", "land"]; const writableStream = new WritableStream({ write(chunk) { const decoder = new TextDecoder(); written.push(decoder.decode(chunk)); }, }); const encoder = new TextEncoder(); const writer = writerFromStreamWriter(writableStream.getWriter()); for (const chunk of chunks) { const n = await writer.write(encoder.encode(chunk)); // stream writers always write all the bytes assertEquals(n, chunk.length); } assertEquals(written, chunks); });