diff --git a/e2e/cases/web-worker/new-worker/index.test.ts b/e2e/cases/web-worker/new-worker/index.test.ts new file mode 100644 index 0000000000..307d57533c --- /dev/null +++ b/e2e/cases/web-worker/new-worker/index.test.ts @@ -0,0 +1,15 @@ +import path from 'node:path'; +import { expect, test } from '@playwright/test'; +import { build, gotoPage } from '@e2e/helper'; + +test('should allow to build web-worker with new Worker', async ({ page }) => { + const rsbuild = await build({ + cwd: __dirname, + runServer: true, + }); + + await gotoPage(page, rsbuild); + await expect(page.locator('#root')).toHaveText( + 'The Answer to the Ultimate Question of Life, The Universe, and Everything: 42', + ); +}); diff --git a/e2e/cases/web-worker/new-worker/src/index.js b/e2e/cases/web-worker/new-worker/src/index.js new file mode 100644 index 0000000000..5e6d12fa5f --- /dev/null +++ b/e2e/cases/web-worker/new-worker/src/index.js @@ -0,0 +1,10 @@ +const worker = new Worker(new URL('./worker.js', import.meta.url)); + +worker.postMessage({ + question: + 'The Answer to the Ultimate Question of Life, The Universe, and Everything', +}); + +worker.onmessage = ({ data: { answer } }) => { + document.getElementById('root').innerHTML = answer; +}; diff --git a/e2e/cases/web-worker/new-worker/src/worker.js b/e2e/cases/web-worker/new-worker/src/worker.js new file mode 100644 index 0000000000..202c294f4d --- /dev/null +++ b/e2e/cases/web-worker/new-worker/src/worker.js @@ -0,0 +1,5 @@ +self.onmessage = ({ data: { question } }) => { + self.postMessage({ + answer: `${question}: 42`, + }); +}; diff --git a/e2e/cases/web-worker/.browserslistrc b/e2e/cases/web-worker/web-worker-target/.browserslistrc similarity index 100% rename from e2e/cases/web-worker/.browserslistrc rename to e2e/cases/web-worker/web-worker-target/.browserslistrc diff --git a/e2e/cases/web-worker/index.test.ts b/e2e/cases/web-worker/web-worker-target/index.test.ts similarity index 100% rename from e2e/cases/web-worker/index.test.ts rename to e2e/cases/web-worker/web-worker-target/index.test.ts diff --git a/e2e/cases/web-worker/src/index.js b/e2e/cases/web-worker/web-worker-target/src/index.js similarity index 100% rename from e2e/cases/web-worker/src/index.js rename to e2e/cases/web-worker/web-worker-target/src/index.js diff --git a/e2e/cases/web-worker/src/index2.js b/e2e/cases/web-worker/web-worker-target/src/index2.js similarity index 100% rename from e2e/cases/web-worker/src/index2.js rename to e2e/cases/web-worker/web-worker-target/src/index2.js diff --git a/e2e/cases/web-worker/src/test.js b/e2e/cases/web-worker/web-worker-target/src/test.js similarity index 100% rename from e2e/cases/web-worker/src/test.js rename to e2e/cases/web-worker/web-worker-target/src/test.js