Nuxt/test/utils/nuxt.js

37 lines
1.0 KiB
JavaScript
Raw Normal View History

2018-10-24 13:53:34 +00:00
import path from 'path'
import fs from 'fs'
import { defaultsDeep } from 'lodash'
import { version as coreVersion } from '../../packages/core/package.json'
2018-10-24 13:53:34 +00:00
export { Nuxt } from '../../packages/core/src/index'
export { Builder } from '../../packages/builder/src/index'
export { Generator } from '../../packages/generator/src/index'
export { BundleBuilder } from '../../packages/webpack/src/index'
2018-12-22 21:05:13 +00:00
export * from '../../packages/utils/src/index'
2018-10-24 13:53:34 +00:00
export const version = `v${coreVersion}`
2018-10-24 13:53:34 +00:00
export const loadFixture = async function (fixture, overrides) {
const rootDir = path.resolve(__dirname, '..', 'fixtures', fixture)
let config = {}
for (const ext of ['ts', 'js']) {
const configFile = path.resolve(rootDir, `nuxt.config.${ext}`)
if (fs.existsSync(configFile)) {
config = (await import(`../fixtures/${fixture}/nuxt.config`)).default
break
}
}
2018-10-24 13:53:34 +00:00
if (typeof config === 'function') {
config = await config()
}
config.rootDir = rootDir
config.dev = false
config.test = true
return defaultsDeep({}, overrides, config)
2018-10-24 14:00:50 +00:00
}