1
0
mirror of https://github.com/nuxt/nuxt.git synced 2025-03-24 01:56:37 +00:00
Nuxt/packages/nuxt/test/build-plugins.bench.ts

41 lines
1.2 KiB
TypeScript

import { fileURLToPath } from 'node:url'
import { rm } from 'node:fs/promises'
import { afterAll, beforeAll, bench, describe } from 'vitest'
import { join, normalize } from 'pathe'
import { withoutTrailingSlash } from 'ufo'
import { build, loadNuxt } from 'nuxt'
import type { Nuxt } from '@nuxt/schema'
const basicTestFixtureDir = withoutTrailingSlash(normalize(fileURLToPath(new URL('../../../test/fixtures/basic', import.meta.url))))
describe('build', () => {
let nuxt: Nuxt
beforeAll(async () => {
await rm(join(basicTestFixtureDir, 'node_modules/build-plugins/.nuxt'), { recursive: true, force: true })
nuxt = await loadNuxt({
cwd: basicTestFixtureDir,
ready: true,
overrides: {
buildDir: join(basicTestFixtureDir, 'node_modules/build-plugins/.nuxt'),
ssr: false,
sourcemap: false,
hooks: {
'build:done': () => {
throw new Error('bypass nitro build')
},
},
},
})
})
afterAll(() => nuxt?.close())
bench('initial production build in the basic test fixture', async () => {
await build(nuxt).catch((e) => {
if (!e?.toString().includes('bypass nitro build')) {
throw e
}
})
})
})