Skip to content

Commit 47e9873

Browse files
committed
feat: setup full bundle mode test
1 parent f46f870 commit 47e9873

File tree

5 files changed

+24
-8
lines changed

5 files changed

+24
-8
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
"lint": "eslint --cache .",
2525
"typecheck": "tsc -p scripts --noEmit && pnpm -r --parallel run typecheck",
2626
"test": "pnpm test-unit && pnpm test-serve && pnpm test-build",
27+
"test-full-bundle-mode": "VITE_TEST_FULL_BUNDLE_MODE=1 vitest run -c vitest.config.e2e.ts",
2728
"test-serve": "vitest run -c vitest.config.e2e.ts",
2829
"test-build": "VITE_TEST_BUILD=1 vitest run -c vitest.config.e2e.ts",
2930
"test-unit": "vitest run",

packages/vite/index.cjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ Object.assign(module.exports, require('./dist/node-cjs/publicUtils.cjs'))
1313
const asyncFunctions = [
1414
'build',
1515
'createServer',
16+
'createServerWithResolvedConfig',
1617
'preview',
1718
'transformWithEsbuild',
1819
'transformWithOxc',

packages/vite/src/node/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export {
1010
} from './config'
1111
export { perEnvironmentPlugin } from './plugin'
1212
export { perEnvironmentState } from './environment'
13-
export { createServer } from './server'
13+
export { createServer, createServerWithResolvedConfig } from './server'
1414
export { preview } from './preview'
1515
export { build, createBuilder } from './build'
1616

playground/vitestSetup.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
build,
1616
createBuilder,
1717
createServer,
18+
createServerWithResolvedConfig,
1819
loadConfigFromFile,
1920
mergeConfig,
2021
preview,
@@ -223,6 +224,9 @@ async function loadConfig(configEnv: ConfigEnv) {
223224
// tests are flaky when `emptyOutDir` is `true`
224225
emptyOutDir: false,
225226
},
227+
experimental: {
228+
fullBundleMode: !!process.env.VITE_TEST_FULL_BUNDLE_MODE,
229+
},
226230
customLogger: createInMemoryLogger(serverLogs),
227231
}
228232
return mergeConfig(options, config || {})
@@ -234,12 +238,16 @@ export async function startDefaultServe(): Promise<void> {
234238
if (!isBuild) {
235239
process.env.VITE_INLINE = 'inline-serve'
236240
const config = await loadConfig({ command: 'serve', mode: 'development' })
237-
// test full bundle mode
238-
// viteServer = server = await createServer(config)
239-
// const builder = await createBuilder(config, null, 'serve')
240-
// await builder.buildApp(server)
241-
// await server.listen()
242-
viteServer = server = await (await createServer(config)).listen()
241+
242+
if (process.env.VITE_TEST_FULL_BUNDLE_MODE) {
243+
const builder = await createBuilder(config, null, 'serve')
244+
viteServer = server = await createServerWithResolvedConfig(builder.config)
245+
await server.listen()
246+
await builder.buildApp(server)
247+
} else {
248+
viteServer = server = await (await createServer(config)).listen()
249+
}
250+
243251
viteTestUrl = stripTrailingSlashIfNeeded(
244252
server.resolvedUrls.local[0],
245253
server.config.base,

vitest.config.e2e.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,13 @@ export default defineConfig({
1212
},
1313
},
1414
test: {
15-
include: ['./playground/**/*.spec.[tj]s'],
15+
include: process.env.VITE_TEST_FULL_BUNDLE_MODE
16+
? [
17+
'./playground/define/**/*.spec.[tj]s',
18+
// './playground/hmr-root/**/*.spec.[tj]s',
19+
// './playground/hmr/**/*.spec.[tj]s'
20+
]
21+
: ['./playground/**/*.spec.[tj]s'],
1622
exclude: [
1723
'./playground/legacy/**/*.spec.[tj]s', // system format
1824
...(isBuild

0 commit comments

Comments
 (0)