diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/js/bun/util/bun-isMainThread.test.js | 15 | ||||
-rw-r--r-- | test/js/bun/util/main-worker-file.js | 14 |
2 files changed, 29 insertions, 0 deletions
diff --git a/test/js/bun/util/bun-isMainThread.test.js b/test/js/bun/util/bun-isMainThread.test.js new file mode 100644 index 000000000..87f74d136 --- /dev/null +++ b/test/js/bun/util/bun-isMainThread.test.js @@ -0,0 +1,15 @@ +import { test, expect } from "bun:test"; +import { bunEnv, bunExe } from "harness"; + +test("Bun.isMainThread", () => { + expect(Bun.isMainThread).toBeTrue(); + + const { stdout, exitCode } = Bun.spawnSync({ + cmd: [bunExe(), import.meta.resolveSync("./main-worker-file.js")], + stderr: "inherit", + stdout: "pipe", + env: bunEnv, + }); + expect(exitCode).toBe(0); + expect(stdout.toString()).toBe("isMainThread true\nisMainThread false\n"); +}); diff --git a/test/js/bun/util/main-worker-file.js b/test/js/bun/util/main-worker-file.js new file mode 100644 index 000000000..376480397 --- /dev/null +++ b/test/js/bun/util/main-worker-file.js @@ -0,0 +1,14 @@ +import { isMainThread } from "bun"; + +console.log("isMainThread", isMainThread); + +if (isMainThread) { + const worker = new Worker(import.meta.url); + const { promise, resolve } = Promise.withResolvers(); + + worker.addEventListener("open", () => { + resolve(); + }); + + await promise; +} |