aboutsummaryrefslogtreecommitdiff
path: root/test/js/web/request/request.test.ts
diff options
context:
space:
mode:
authorGravatar Ciro Spaciari <ciro.spaciari@gmail.com> 2023-09-15 21:19:26 -0700
committerGravatar GitHub <noreply@github.com> 2023-09-15 21:19:26 -0700
commitcb057e61ba5cd8ab152aac3872291bf32dbf435b (patch)
tree33795a2352548c4cf9913f7f4b0c8ed52a66a743 /test/js/web/request/request.test.ts
parentb54e3f3c042bc37418a646728428910cafc502ef (diff)
downloadbun-cb057e61ba5cd8ab152aac3872291bf32dbf435b.tar.gz
bun-cb057e61ba5cd8ab152aac3872291bf32dbf435b.tar.zst
bun-cb057e61ba5cd8ab152aac3872291bf32dbf435b.zip
fix(request) handle undefined/null/empty signal on request (#5503)
* handle undefined/null/empty signal on request * better approach
Diffstat (limited to 'test/js/web/request/request.test.ts')
-rw-r--r--test/js/web/request/request.test.ts37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/js/web/request/request.test.ts b/test/js/web/request/request.test.ts
new file mode 100644
index 000000000..ac6008eb4
--- /dev/null
+++ b/test/js/web/request/request.test.ts
@@ -0,0 +1,37 @@
+import { test, expect } from "bun:test";
+
+test("request can receive undefined signal", async () => {
+ const request = new Request("http://example.com/", {
+ method: "POST",
+ headers: {
+ "Content-Type": "text/bun;charset=utf-8",
+ },
+ body: "bun",
+ signal: undefined,
+ });
+ expect(request.method).toBe("POST");
+ // @ts-ignore
+ const clone = new Request(request);
+ expect(clone.method).toBe("POST");
+ expect(clone.headers.get("content-type")).toBe("text/bun;charset=utf-8");
+ expect(await request.text()).toBe("bun");
+ expect(await clone.text()).toBe("bun");
+});
+
+test("request can receive null signal", async () => {
+ const request = new Request("http://example.com/", {
+ method: "POST",
+ headers: {
+ "Content-Type": "text/bun;charset=utf-8",
+ },
+ body: "bun",
+ signal: null,
+ });
+ expect(request.method).toBe("POST");
+ // @ts-ignore
+ const clone = new Request(request);
+ expect(clone.method).toBe("POST");
+ expect(clone.headers.get("content-type")).toBe("text/bun;charset=utf-8");
+ expect(await request.text()).toBe("bun");
+ expect(await clone.text()).toBe("bun");
+});