summaryrefslogtreecommitdiff
path: root/cli/tests/unit/text_encoding_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/unit/text_encoding_test.ts')
-rw-r--r--cli/tests/unit/text_encoding_test.ts17
1 files changed, 17 insertions, 0 deletions
diff --git a/cli/tests/unit/text_encoding_test.ts b/cli/tests/unit/text_encoding_test.ts
index b76e9a9bf..270fd07a8 100644
--- a/cli/tests/unit/text_encoding_test.ts
+++ b/cli/tests/unit/text_encoding_test.ts
@@ -319,3 +319,20 @@ Deno.test(function binaryEncode() {
assertEquals(Array.from(bytes), decodeBinary(binaryString));
}
});
+
+Deno.test(
+ { permissions: { read: true } },
+ async function textDecoderStreamCleansUpOnCancel() {
+ const filename = "cli/tests/testdata/assets/hello.txt";
+ const file = await Deno.open(filename);
+ const readable = file.readable.pipeThrough(new TextDecoderStream());
+ const chunks = [];
+ for await (const chunk of readable) {
+ chunks.push(chunk);
+ // breaking out of the loop prevents normal shutdown at end of async iterator values and triggers the cancel method of the stream instead
+ break;
+ }
+ assertEquals(chunks.length, 1);
+ assertEquals(chunks[0].length, 12);
+ },
+);