forked from nuxt/nuxt
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwp.config.test.js
More file actions
38 lines (35 loc) · 1.17 KB
/
wp.config.test.js
File metadata and controls
38 lines (35 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import path from 'path'
import PerfLoader from '../../packages/webpack/src/utils/perf-loader'
describe('webpack configuration', () => {
test('performance loader', () => {
const js = { name: 'js', poolTimeout: Infinity }
const css = { name: 'css', poolTimeout: Infinity }
PerfLoader.warmup = jest.fn()
PerfLoader.warmupAll({ dev: true })
expect(PerfLoader.warmup).toHaveBeenCalledTimes(2)
expect(PerfLoader.warmup).toHaveBeenCalledWith(js, [
require.resolve('babel-loader'),
require.resolve('@babel/preset-env')
])
expect(PerfLoader.warmup).toHaveBeenCalledWith(css, ['css-loader'])
const perfLoader = new PerfLoader(
'test-perf',
{
options: {
dev: true
},
buildOptions: {
parallel: true,
cache: true
}
}
)
expect(perfLoader.workerPools).toMatchObject({ js, css })
const loaders = perfLoader.use('js')
const cacheDirectory = path.resolve('node_modules/.cache/cache-loader/test-perf')
expect(loaders).toMatchObject([
{ loader: 'cache-loader', options: { cacheDirectory } },
{ loader: 'thread-loader', options: js }
])
})
})