summaryrefslogtreecommitdiff
path: root/tests/unit/fetch_test.ts
diff options
context:
space:
mode:
authorLuca Casonato <hello@lcas.dev>2024-11-15 15:54:28 +0100
committerGitHub <noreply@github.com>2024-11-15 15:54:28 +0100
commitb8cf2599242a9d85d03b57d3649ccdf8bce1530e (patch)
tree87a6288f2174aa6d22730a9ec020292b778c9dca /tests/unit/fetch_test.ts
parent3f26310728ef2d56ace7370a555eb9a862295983 (diff)
feat(fetch): accept async iterables for body (#26882)
Reland of #24623, but with a fix for `String` objects. Co-authored-by: crowlkats <crowlkats@toaxl.com>
Diffstat (limited to 'tests/unit/fetch_test.ts')
-rw-r--r--tests/unit/fetch_test.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/unit/fetch_test.ts b/tests/unit/fetch_test.ts
index 3ae96746a..6d3fd8cc1 100644
--- a/tests/unit/fetch_test.ts
+++ b/tests/unit/fetch_test.ts
@@ -2119,3 +2119,30 @@ Deno.test(
await server;
},
);
+
+Deno.test("fetch async iterable", async () => {
+ const iterable = (async function* () {
+ yield new Uint8Array([1, 2, 3, 4, 5]);
+ yield new Uint8Array([6, 7, 8, 9, 10]);
+ })();
+ const res = new Response(iterable);
+ const actual = await res.bytes();
+ const expected = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
+ assertEquals(actual, expected);
+});
+
+Deno.test("fetch iterable", async () => {
+ const iterable = (function* () {
+ yield new Uint8Array([1, 2, 3, 4, 5]);
+ yield new Uint8Array([6, 7, 8, 9, 10]);
+ })();
+ const res = new Response(iterable);
+ const actual = await res.bytes();
+ const expected = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
+ assertEquals(actual, expected);
+});
+
+Deno.test("fetch string object", async () => {
+ const res = new Response(Object("hello"));
+ assertEquals(await res.text(), "hello");
+});