diff --git a/e2e/cases/alias/__snapshots__/index.test.ts.snap b/e2e/cases/alias/__snapshots__/index.test.ts.snap index 0c1cdae0..6ab389f6 100644 --- a/e2e/cases/alias/__snapshots__/index.test.ts.snap +++ b/e2e/cases/alias/__snapshots__/index.test.ts.snap @@ -1,6 +1,6 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`alias in ts 1`] = ` +exports[`alias should work 1`] = ` "var __webpack_modules__ = ({}); /************************************************************************/ // The module cache @@ -42,10 +42,10 @@ __webpack_require__.ruid = "bundler=rspack@1.0.0-canary-0b368b6-20240704171208"; /************************************************************************/ var __webpack_exports__ = {}; -;// CONCATENATED MODULE: ./e2e/cases/alias/ts/src/a.ts +;// CONCATENATED MODULE: ./e2e/cases/alias/src/a.ts const a = 'hello world'; -;// CONCATENATED MODULE: ./e2e/cases/alias/ts/src/index.ts +;// CONCATENATED MODULE: ./e2e/cases/alias/src/index.ts console.info(a); @@ -53,7 +53,7 @@ export { a }; " `; -exports[`alias in ts 2`] = ` +exports[`alias should work 2`] = ` "(() => { // webpackBootstrap "use strict"; var __webpack_modules__ = ({}); @@ -97,10 +97,10 @@ __webpack_require__.ruid = "bundler=rspack@1.0.0-canary-0b368b6-20240704171208"; /************************************************************************/ var __webpack_exports__ = {}; -;// CONCATENATED MODULE: ./e2e/cases/alias/ts/src/a.ts +;// CONCATENATED MODULE: ./e2e/cases/alias/src/a.ts const a = 'hello world'; -;// CONCATENATED MODULE: ./e2e/cases/alias/ts/src/index.ts +;// CONCATENATED MODULE: ./e2e/cases/alias/src/index.ts console.info(a); diff --git a/e2e/cases/alias/index.test.ts b/e2e/cases/alias/index.test.ts index 6532bcb3..95b96c45 100644 --- a/e2e/cases/alias/index.test.ts +++ b/e2e/cases/alias/index.test.ts @@ -1,21 +1,8 @@ -import { join } from 'node:path'; import { expect, test } from 'vitest'; import { buildAndGetResults } from '#shared'; -test('alias in js', async () => { - delete process.env.NODE_ENV; - - const fixturePath = join(__dirname, 'js'); - const { entries } = await buildAndGetResults(fixturePath); - - expect(entries.esm).toContain('hello world'); - expect(entries.cjs).toContain('hello world'); -}); - -test('alias in ts', async () => { - delete process.env.NODE_ENV; - - const fixturePath = join(__dirname, 'ts'); +test('alias should work', async () => { + const fixturePath = __dirname; const { entries } = await buildAndGetResults(fixturePath); expect(entries.esm).toContain('hello world'); diff --git a/e2e/cases/alias/js/rslib.config.ts b/e2e/cases/alias/js/rslib.config.ts deleted file mode 100644 index db365fba..00000000 --- a/e2e/cases/alias/js/rslib.config.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { join } from 'node:path'; -import { defineConfig } from '@rslib/core'; -import { generateBundleCjsConfig, generateBundleEsmConfig } from '#shared'; - -export default defineConfig({ - lib: [generateBundleEsmConfig(__dirname), generateBundleCjsConfig(__dirname)], - source: { - entry: { - main: join(__dirname, 'src/index.js'), - }, - alias: { - '@src': join(__dirname, 'src'), - }, - }, -}); diff --git a/e2e/cases/alias/js/src/a.js b/e2e/cases/alias/js/src/a.js deleted file mode 100644 index 29aa5580..00000000 --- a/e2e/cases/alias/js/src/a.js +++ /dev/null @@ -1 +0,0 @@ -export const a = 'hello world'; diff --git a/e2e/cases/alias/js/src/index.js b/e2e/cases/alias/js/src/index.js deleted file mode 100644 index 3228a48e..00000000 --- a/e2e/cases/alias/js/src/index.js +++ /dev/null @@ -1,3 +0,0 @@ -import { a } from '@src/a'; - -console.info(a); diff --git a/e2e/cases/alias/ts/rslib.config.ts b/e2e/cases/alias/rslib.config.ts similarity index 100% rename from e2e/cases/alias/ts/rslib.config.ts rename to e2e/cases/alias/rslib.config.ts diff --git a/e2e/cases/alias/ts/src/a.ts b/e2e/cases/alias/src/a.ts similarity index 100% rename from e2e/cases/alias/ts/src/a.ts rename to e2e/cases/alias/src/a.ts diff --git a/e2e/cases/alias/ts/src/index.ts b/e2e/cases/alias/src/index.ts similarity index 100% rename from e2e/cases/alias/ts/src/index.ts rename to e2e/cases/alias/src/index.ts diff --git a/e2e/cases/alias/ts/tsconfig.json b/e2e/cases/alias/tsconfig.json similarity index 100% rename from e2e/cases/alias/ts/tsconfig.json rename to e2e/cases/alias/tsconfig.json diff --git a/e2e/cases/define/index.pw.test.ts b/e2e/cases/define/index.pw.test.ts deleted file mode 100644 index 7793d2c2..00000000 --- a/e2e/cases/define/index.pw.test.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { expect, test } from '@playwright/test'; - -test('todo', async () => { - expect(1).toBe(1); -}); diff --git a/e2e/cases/define/index.test.ts b/e2e/cases/define/index.test.ts index 950e649e..35c34e9f 100644 --- a/e2e/cases/define/index.test.ts +++ b/e2e/cases/define/index.test.ts @@ -1,22 +1,8 @@ -import { join } from 'node:path'; import { expect, test } from 'vitest'; import { buildAndGetResults } from '#shared'; -test('define in js', async () => { - const fixturePath = join(__dirname, 'js'); - const { entries } = await buildAndGetResults(fixturePath); - - // TODO: remove js/ts dir in cases `define` and `alias` - // supersede with a complex js/ts combined case - expect(entries.esm).not.toContain('console.info(VERSION)'); - expect(entries.esm).toContain('1.0.0'); - - expect(entries.cjs).not.toContain('console.info(VERSION)'); - expect(entries.cjs).toContain('1.0.0'); -}); - -test('define in ts', async () => { - const fixturePath = join(__dirname, 'ts'); +test('define should work', async () => { + const fixturePath = __dirname; const { entries } = await buildAndGetResults(fixturePath); expect(entries.esm).not.toContain('console.info(VERSION)'); diff --git a/e2e/cases/define/js/rslib.config.ts b/e2e/cases/define/js/rslib.config.ts deleted file mode 100644 index 70f34caa..00000000 --- a/e2e/cases/define/js/rslib.config.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { join } from 'node:path'; -import { defineConfig } from '@rslib/core'; -import { generateBundleCjsConfig, generateBundleEsmConfig } from '#shared'; - -export default defineConfig({ - lib: [generateBundleEsmConfig(__dirname), generateBundleCjsConfig(__dirname)], - source: { - entry: { - main: join(__dirname, 'src/index.js'), - }, - define: { - VERSION: JSON.stringify('1.0.0'), - }, - }, -}); diff --git a/e2e/cases/define/js/src/index.js b/e2e/cases/define/js/src/index.js deleted file mode 100644 index 89e161b5..00000000 --- a/e2e/cases/define/js/src/index.js +++ /dev/null @@ -1 +0,0 @@ -console.info(VERSION); diff --git a/e2e/cases/define/ts/rslib.config.ts b/e2e/cases/define/rslib.config.ts similarity index 100% rename from e2e/cases/define/ts/rslib.config.ts rename to e2e/cases/define/rslib.config.ts diff --git a/e2e/cases/define/ts/src/env.d.ts b/e2e/cases/define/src/env.d.ts similarity index 100% rename from e2e/cases/define/ts/src/env.d.ts rename to e2e/cases/define/src/env.d.ts diff --git a/e2e/cases/define/ts/src/index.ts b/e2e/cases/define/src/index.ts similarity index 100% rename from e2e/cases/define/ts/src/index.ts rename to e2e/cases/define/src/index.ts diff --git a/e2e/cases/externals/browser/index.test.ts b/e2e/cases/externals/browser/index.test.ts index 73efd10f..dcba5e15 100644 --- a/e2e/cases/externals/browser/index.test.ts +++ b/e2e/cases/externals/browser/index.test.ts @@ -3,8 +3,6 @@ import { expect, test } from 'vitest'; import { buildAndGetResults } from '#shared'; test('should fail when platform is not "node"', async () => { - delete process.env.NODE_ENV; - const fixturePath = join(__dirname); const build = buildAndGetResults(fixturePath); await expect(build).rejects.toThrowError('Rspack build failed!'); diff --git a/e2e/cases/externals/node/index.test.ts b/e2e/cases/externals/node/index.test.ts index 007e5eab..9ae253cb 100644 --- a/e2e/cases/externals/node/index.test.ts +++ b/e2e/cases/externals/node/index.test.ts @@ -3,8 +3,6 @@ import { expect, test } from 'vitest'; import { buildAndGetResults } from '#shared'; test('auto externalize Node.js built-in modules when platform is "node"', async () => { - delete process.env.NODE_ENV; - const fixturePath = join(__dirname); const { entries } = await buildAndGetResults(fixturePath); diff --git a/package.json b/package.json index 988b5146..19b0ddc4 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "typescript": "^5.4.5", "vitest": "^1.6.0" }, - "packageManager": "pnpm@9.1.4", + "packageManager": "pnpm@9.5.0", "engines": { "node": ">=18.0.0", "pnpm": ">=9.0.0" diff --git a/setupVitestTests.js b/setupVitestTests.js new file mode 100644 index 00000000..480544fe --- /dev/null +++ b/setupVitestTests.js @@ -0,0 +1,4 @@ +beforeEach(() => { + // since our NODE_ENV injection logic is via cli, we need to delete "test" NODE_ENV to avoid affecting the default build config + delete process.env.NODE_ENV; +}); diff --git a/vitest.workspace.ts b/vitest.workspace.ts index 12e8d9cd..88721e7d 100644 --- a/vitest.workspace.ts +++ b/vitest.workspace.ts @@ -20,6 +20,7 @@ export default defineWorkspace([ test: { ...shared, name: 'artifact', + setupFiles: ['./setupVitestTests.js'], include: ['e2e/cases/**/*.test.ts'], exclude: ['e2e/cases/**/*.pw.test.ts', '**/node_modules/**'], },