aboutsummaryrefslogtreecommitdiff
path: root/test/js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-09-21 05:48:40 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-09-21 05:48:40 -0700
commite1cf08b3a6fb33f0c90837178fc36caeacb346e5 (patch)
treeb7c5a6a83d37799b0c24af737dc2d19cc9d8cba3 /test/js
parent28f345346650dc94330b4a2cdcd1297df2916a39 (diff)
downloadbun-e1cf08b3a6fb33f0c90837178fc36caeacb346e5.tar.gz
bun-e1cf08b3a6fb33f0c90837178fc36caeacb346e5.tar.zst
bun-e1cf08b3a6fb33f0c90837178fc36caeacb346e5.zip
Fixes #5859jarred/5859
Diffstat (limited to 'test/js')
-rw-r--r--test/js/bun/http/serve.test.ts42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/js/bun/http/serve.test.ts b/test/js/bun/http/serve.test.ts
index b6ef75b54..8bae503b4 100644
--- a/test/js/bun/http/serve.test.ts
+++ b/test/js/bun/http/serve.test.ts
@@ -1165,3 +1165,45 @@ it("unix socket connection throws an error on a bad domain without crashing", as
});
}).toThrow();
});
+
+it("#5859 text", async () => {
+ const server = Bun.serve({
+ port: 0,
+ development: false,
+ async fetch(req) {
+ return new Response(await req.text(), {});
+ },
+ });
+
+ const response = await fetch(`http://${server.hostname}:${server.port}`, {
+ method: "POST",
+ body: new Uint8Array([0xfd]),
+ });
+
+ expect(await response.text()).toBe("�");
+ await server.stop(true);
+});
+
+it("#5859 json", async () => {
+ const server = Bun.serve({
+ port: 0,
+ async fetch(req) {
+ try {
+ await req.json();
+ } catch (e) {
+ return new Response("FAIL", { status: 500 });
+ }
+
+ return new Response("SHOULD'VE FAILED", {});
+ },
+ });
+
+ const response = await fetch(`http://${server.hostname}:${server.port}`, {
+ method: "POST",
+ body: new Uint8Array([0xfd]),
+ });
+
+ expect(response.ok).toBeFalse();
+ expect(await response.text()).toBe("FAIL");
+ await server.stop(true);
+});