diff options
author | 2023-03-02 19:02:10 -0800 | |
---|---|---|
committer | 2023-03-02 19:02:10 -0800 | |
commit | 9388b3f8257bc2e580deaece4cd2677928104fc6 (patch) | |
tree | 3f6aff2009cef69897f599fe51305b894f81a376 /test/bun.js | |
parent | b469e5035161286abeb1a7726518d1afcc163a51 (diff) | |
download | bun-9388b3f8257bc2e580deaece4cd2677928104fc6.tar.gz bun-9388b3f8257bc2e580deaece4cd2677928104fc6.tar.zst bun-9388b3f8257bc2e580deaece4cd2677928104fc6.zip |
Add a zig fmt action (#2277)
* Add a zig fmt action
* add failing file
* Setup prettier better
* Update prettier-fmt.yml
* Fail on error
* Update prettier-fmt.yml
* boop
* boop2
* tar.gz
* Update zig-fmt.yml
* Update zig-fmt.yml
* Update zig-fmt.yml
* Update zig-fmt.yml
* Update zig-fmt.yml
* boop
* Update prettier-fmt.yml
* tag
* newlines
* multiline
* fixup
* Update zig-fmt.yml
* update it
* fixup
* both
* w
* Update prettier-fmt.yml
* prettier all the things
* Update package.json
* zig fmt
* ❌ ✅
* bump
* .
* quotes
* fix prettier ignore
* once more
* Update prettier-fmt.yml
* Update fallback.ts
* consistentcy
---------
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Diffstat (limited to 'test/bun.js')
-rw-r--r-- | test/bun.js/.prettierignore | 2 | ||||
-rw-r--r-- | test/bun.js/baz.js | 1 | ||||
-rw-r--r-- | test/bun.js/buffer.test.js | 5 | ||||
-rw-r--r-- | test/bun.js/bun-server.test.ts | 8 | ||||
-rw-r--r-- | test/bun.js/bun-write.test.js | 2 | ||||
-rw-r--r-- | test/bun.js/disabled-module.test.js | 94 | ||||
-rw-r--r-- | test/bun.js/fetch.test.js | 2 | ||||
-rw-r--r-- | test/bun.js/fetch_headers.test.js | 20 | ||||
-rw-r--r-- | test/bun.js/repro_2005.test.js | 1 |
9 files changed, 88 insertions, 47 deletions
diff --git a/test/bun.js/.prettierignore b/test/bun.js/.prettierignore new file mode 100644 index 000000000..91b589eb2 --- /dev/null +++ b/test/bun.js/.prettierignore @@ -0,0 +1,2 @@ +node_modules +third-party diff --git a/test/bun.js/baz.js b/test/bun.js/baz.js index 5837bb3bb..58a9bb4b0 100644 --- a/test/bun.js/baz.js +++ b/test/bun.js/baz.js @@ -1,2 +1,3 @@ // this file is used in resolve.test.js +// export default {}; diff --git a/test/bun.js/buffer.test.js b/test/bun.js/buffer.test.js index 0dcf96816..b8fade4d2 100644 --- a/test/bun.js/buffer.test.js +++ b/test/bun.js/buffer.test.js @@ -2552,7 +2552,10 @@ it("should not perform out-of-bound access on invalid UTF-8 byte sequence", () = }); it("repro #2063", () => { - const buf = Buffer.from("eyJlbWFpbCI6Ijg3MTg4NDYxN0BxcS5jb20iLCJpZCI6OCwicm9sZSI6Im5vcm1hbCIsImlhdCI6MTY3NjI4NDQyMSwiZXhwIjoxNjc2ODg5MjIxfQ", 'base64'); + const buf = Buffer.from( + "eyJlbWFpbCI6Ijg3MTg4NDYxN0BxcS5jb20iLCJpZCI6OCwicm9sZSI6Im5vcm1hbCIsImlhdCI6MTY3NjI4NDQyMSwiZXhwIjoxNjc2ODg5MjIxfQ", + "base64", + ); expect(buf.length).toBe(85); expect(buf[82]).toBe(50); expect(buf[83]).toBe(49); diff --git a/test/bun.js/bun-server.test.ts b/test/bun.js/bun-server.test.ts index 6e0eab6fd..52574d2a3 100644 --- a/test/bun.js/bun-server.test.ts +++ b/test/bun.js/bun-server.test.ts @@ -131,14 +131,16 @@ describe("Server", () => { return new Response( new ReadableStream({ async pull(controller) { + console.trace("here"); abortController.abort(); const buffer = await Bun.file(import.meta.dir + "/fixture.html.gz").arrayBuffer(); + console.trace("here"); controller.enqueue(buffer); + console.trace("here"); //wait to detect the connection abortion await Bun.sleep(15); - controller.close(); }, }), @@ -155,11 +157,15 @@ describe("Server", () => { }); try { + console.trace("here"); await fetch(`http://${server.hostname}:${server.port}`, { signal: abortController.signal }); } catch {} await Bun.sleep(10); + console.trace("here"); expect(signalOnServer).toBe(true); + console.trace("here"); server.stop(true); + console.trace("here"); } }); }); diff --git a/test/bun.js/bun-write.test.js b/test/bun.js/bun-write.test.js index 68e221d51..c324d36a0 100644 --- a/test/bun.js/bun-write.test.js +++ b/test/bun.js/bun-write.test.js @@ -142,7 +142,7 @@ it("Bun.file", async () => { it("Bun.file empty file", async () => { const file = path.join(import.meta.dir, "emptyFile"); await gcTick(); - const buffer = await Bun.file(file).arrayBuffer() + const buffer = await Bun.file(file).arrayBuffer(); expect(buffer.byteLength).toBe(0); await gcTick(); }); diff --git a/test/bun.js/disabled-module.test.js b/test/bun.js/disabled-module.test.js index c12676959..61411aa44 100644 --- a/test/bun.js/disabled-module.test.js +++ b/test/bun.js/disabled-module.test.js @@ -1,38 +1,72 @@ import { expect, test } from "bun:test"; -test("not implemented yet module masquerades as undefined and throws an error", () => { - const worker_threads = import.meta.require("worker_threads"); +// test("not implemented yet module masquerades as undefined and throws an error", () => { +// const worker_threads = import.meta.require("worker_threads"); - expect(typeof worker_threads).toBe("undefined"); - expect(typeof worker_threads.getEnvironmentData).toBe("undefined"); +// expect(typeof worker_threads).toBe("undefined"); +// expect(typeof worker_threads.getEnvironmentData).toBe("undefined"); +// }); + +test("AsyncContext", async done => { + const { AsyncContext } = import.meta.require("async_hooks"); + console.log("here"); + const ctx = new AsyncContext(); + ctx + .run(1234, async () => { + expect(ctx.get()).toBe(1234); + console.log("here"); + await 1; + console.log("ctx", ctx.get()); + const setTimeoutResult = await ctx.run( + 2345, + () => + new Promise(resolve => { + queueMicrotask(() => { + console.log("queueMicrotask", ctx.get()); + resolve(ctx.get()); + }); + }), + ); + expect(setTimeoutResult).toBe(2345); + expect(ctx.get()).toBe(1234); + return "final result"; + }) + .then(result => { + expect(result).toBe("final result"); + // The code that generated the Promise has access to the 1234 + // value provided to ctx.run above, but consumers of the Promise + // do not automatically inherit it. + expect(ctx.get()).toBeUndefined(); + done(); + }); }); -test("AsyncLocalStorage polyfill", () => { - const { AsyncLocalStorage } = import.meta.require("async_hooks"); +// test("AsyncLocalStorage polyfill", () => { +// const { AsyncLocalStorage } = import.meta.require("async_hooks"); - const store = new AsyncLocalStorage(); - var called = false; - expect(store.getStore()).toBe(null); - store.run({ foo: "bar" }, () => { - expect(store.getStore()).toEqual({ foo: "bar" }); - called = true; - }); - expect(store.getStore()).toBe(null); - expect(called).toBe(true); -}); +// const store = new AsyncLocalStorage(); +// var called = false; +// expect(store.getStore()).toBe(null); +// store.run({ foo: "bar" }, () => { +// expect(store.getStore()).toEqual({ foo: "bar" }); +// called = true; +// }); +// expect(store.getStore()).toBe(null); +// expect(called).toBe(true); +// }); -test("AsyncResource polyfill", () => { - const { AsyncResource } = import.meta.require("async_hooks"); +// test("AsyncResource polyfill", () => { +// const { AsyncResource } = import.meta.require("async_hooks"); - const resource = new AsyncResource("test"); - var called = false; - resource.runInAsyncScope( - () => { - called = true; - }, - null, - "foo", - "bar", - ); - expect(called).toBe(true); -}); +// const resource = new AsyncResource("test"); +// var called = false; +// resource.runInAsyncScope( +// () => { +// called = true; +// }, +// null, +// "foo", +// "bar", +// ); +// expect(called).toBe(true); +// }); diff --git a/test/bun.js/fetch.test.js b/test/bun.js/fetch.test.js index e0f4c7d43..be64a0109 100644 --- a/test/bun.js/fetch.test.js +++ b/test/bun.js/fetch.test.js @@ -554,7 +554,7 @@ describe("Bun.file", () => { testBlobInterface(data => { const blob = new Blob([data]); const buffer = Bun.peek(blob.arrayBuffer()); - const path = join(tempdir , "tmp-" + callCount++ + ".bytes"); + const path = join(tempdir, "tmp-" + callCount++ + ".bytes"); require("fs").writeFileSync(path, buffer); const file = Bun.file(path); expect(blob.size).toBe(file.size); diff --git a/test/bun.js/fetch_headers.test.js b/test/bun.js/fetch_headers.test.js index 7f8fab188..2e5b9fa52 100644 --- a/test/bun.js/fetch_headers.test.js +++ b/test/bun.js/fetch_headers.test.js @@ -19,17 +19,17 @@ describe("Headers", async () => { }); it("Headers should work", async () => { - expect(await fetchContent({"x-test": "header 1"})).toBe("header 1"); + expect(await fetchContent({ "x-test": "header 1" })).toBe("header 1"); }); it("Header names must be valid", async () => { - expect(() => fetch(url, {headers: {"a\tb:c": "foo" }})).toThrow("Invalid header name: 'a\tb:c'"); - expect(() => fetch(url, {headers: {"❤️": "foo" }})).toThrow("Invalid header name: '❤️'"); + expect(() => fetch(url, { headers: { "a\tb:c": "foo" } })).toThrow("Invalid header name: 'a\tb:c'"); + expect(() => fetch(url, { headers: { "❤️": "foo" } })).toThrow("Invalid header name: '❤️'"); }); it("Header values must be valid", async () => { - expect(() => fetch(url, {headers: {"x-test": "\0" }})).toThrow("Header 'x-test' has invalid value: '\0'"); - expect(() => fetch(url, {headers: {"x-test": "❤️" }})).toThrow("Header 'x-test' has invalid value: '❤️'"); + expect(() => fetch(url, { headers: { "x-test": "\0" } })).toThrow("Header 'x-test' has invalid value: '\0'"); + expect(() => fetch(url, { headers: { "x-test": "❤️" } })).toThrow("Header 'x-test' has invalid value: '❤️'"); }); it("repro 1602", async () => { @@ -42,17 +42,13 @@ describe("Headers", async () => { expect(roundTripString).toBe(origString); // This one will pass - expect(await fetchContent({"x-test": roundTripString})).toBe(roundTripString); + expect(await fetchContent({ "x-test": roundTripString })).toBe(roundTripString); // This would hang - expect(await fetchContent({"x-test": origString})).toBe(origString); + expect(await fetchContent({ "x-test": origString })).toBe(origString); }); }); async function fetchContent(headers) { - const res = await fetch( - url, - { headers: headers }, - { verbose: true } - ); + const res = await fetch(url, { headers: headers }, { verbose: true }); return await res.text(); } diff --git a/test/bun.js/repro_2005.test.js b/test/bun.js/repro_2005.test.js index bd80ab7dd..dc0cd9a97 100644 --- a/test/bun.js/repro_2005.test.js +++ b/test/bun.js/repro_2005.test.js @@ -8,5 +8,4 @@ it("regex literal with non-Latin1 should work", () => { //Incorrect result: 这是一段要替换的文字 expect(text.replace(/要替换/, "")).toBe("这是一段的文字"); - }); |