diff options
Diffstat (limited to 'cli/tests/workers_test.ts')
-rw-r--r-- | cli/tests/workers_test.ts | 87 |
1 files changed, 48 insertions, 39 deletions
diff --git a/cli/tests/workers_test.ts b/cli/tests/workers_test.ts index df2cdf2aa..feab0f9c2 100644 --- a/cli/tests/workers_test.ts +++ b/cli/tests/workers_test.ts @@ -32,13 +32,14 @@ Deno.test({ fn: async function (): Promise<void> { const promise = createResolvable(); - const jsWorker = new Worker("../tests/subdir/test_worker.js", { - type: "module", - }); - const tsWorker = new Worker("../tests/subdir/test_worker.ts", { - type: "module", - name: "tsWorker", - }); + const jsWorker = new Worker( + new URL("subdir/test_worker.js", import.meta.url).href, + { type: "module" } + ); + const tsWorker = new Worker( + new URL("subdir/test_worker.ts", import.meta.url).href, + { type: "module", name: "tsWorker" } + ); tsWorker.onmessage = (e): void => { assertEquals(e.data, "Hello World"); @@ -67,10 +68,10 @@ Deno.test({ fn: async function (): Promise<void> { const promise = createResolvable(); - const nestedWorker = new Worker("../tests/subdir/nested_worker.js", { - type: "module", - name: "nested", - }); + const nestedWorker = new Worker( + new URL("subdir/nested_worker.js", import.meta.url).href, + { type: "module", name: "nested" } + ); nestedWorker.onmessage = (e): void => { assert(e.data.type !== "error"); @@ -87,9 +88,10 @@ Deno.test({ name: "worker throws when executing", fn: async function (): Promise<void> { const promise = createResolvable(); - const throwingWorker = new Worker("../tests/subdir/throwing_worker.js", { - type: "module", - }); + const throwingWorker = new Worker( + new URL("subdir/throwing_worker.js", import.meta.url).href, + { type: "module" } + ); // eslint-disable-next-line @typescript-eslint/no-explicit-any throwingWorker.onerror = (e: any): void => { @@ -108,9 +110,10 @@ Deno.test({ fn: async function (): Promise<void> { const promise = createResolvable(); - const fetchingWorker = new Worker("../tests/subdir/fetching_worker.js", { - type: "module", - }); + const fetchingWorker = new Worker( + new URL("subdir/fetching_worker.js", import.meta.url).href, + { type: "module" } + ); // eslint-disable-next-line @typescript-eslint/no-explicit-any fetchingWorker.onerror = (e: any): void => { @@ -134,9 +137,10 @@ Deno.test({ fn: async function (): Promise<void> { const promise = createResolvable(); - const busyWorker = new Worker("../tests/subdir/busy_worker.js", { - type: "module", - }); + const busyWorker = new Worker( + new URL("subdir/busy_worker.js", import.meta.url).href, + { type: "module" } + ); let testResult = 0; @@ -166,9 +170,10 @@ Deno.test({ // https://github.com/denoland/deno/issues/4080 const promise = createResolvable(); - const racyWorker = new Worker("../tests/subdir/racy_worker.js", { - type: "module", - }); + const racyWorker = new Worker( + new URL("subdir/racy_worker.js", import.meta.url).href, + { type: "module" } + ); racyWorker.onmessage = (e): void => { assertEquals(e.data.buf.length, 999999); @@ -193,9 +198,10 @@ Deno.test({ const promise1 = createResolvable(); const promise2 = createResolvable(); - const worker = new Worker("../tests/subdir/event_worker.js", { - type: "module", - }); + const worker = new Worker( + new URL("subdir/event_worker.js", import.meta.url).href, + { type: "module" } + ); worker.onmessage = (_e: Event): void => { messageHandlersCalled++; @@ -236,9 +242,10 @@ Deno.test({ fn: async function (): Promise<void> { const promise1 = createResolvable(); - const worker = new Worker("../tests/subdir/event_worker_scope.js", { - type: "module", - }); + const worker = new Worker( + new URL("subdir/event_worker_scope.js", import.meta.url).href, + { type: "module" } + ); worker.onmessage = (e: MessageEvent): void => { const { messageHandlersCalled, errorHandlersCalled } = e.data; @@ -264,13 +271,14 @@ Deno.test({ const promise = createResolvable(); const promise2 = createResolvable(); - const regularWorker = new Worker("../tests/subdir/non_deno_worker.js", { - type: "module", - }); - const denoWorker = new Worker("../tests/subdir/deno_worker.ts", { - type: "module", - deno: true, - }); + const regularWorker = new Worker( + new URL("subdir/non_deno_worker.js", import.meta.url).href, + { type: "module" } + ); + const denoWorker = new Worker( + new URL("subdir/deno_worker.ts", import.meta.url).href, + { type: "module", deno: true } + ); regularWorker.onmessage = (e): void => { assertEquals(e.data, "Hello World"); @@ -295,9 +303,10 @@ Deno.test({ name: "worker with crypto in scope", fn: async function (): Promise<void> { const promise = createResolvable(); - const w = new Worker("../tests/subdir/worker_crypto.js", { - type: "module", - }); + const w = new Worker( + new URL("subdir/worker_crypto.js", import.meta.url).href, + { type: "module" } + ); w.onmessage = (e): void => { assertEquals(e.data, true); promise.resolve(); |