861edad459
Removes `rimraf` for a smaller custom lib Benchmarks (in ms): ``` rimraf 1 518.536376 rimraf 2 416.112451 rimraf 3 451.905842 rimraf 4 525.117395 rimraf 5 434.230384 ---- Average: 469.18ms ----------- recursive delete 1 121.493979 recursive delete 2 130.335272 recursive delete 3 149.798316 recursive delete 4 182.184688 recursive delete 5 130.346207 --- Average: 142.83ms ``` `recursiveDelete` finishes in ~30% of the time it takes `rimraf` (3.3 times faster)
22 lines
688 B
JavaScript
22 lines
688 B
JavaScript
/* eslint-env jest */
|
|
import { recursiveDelete } from 'next/dist/lib/recursive-delete'
|
|
import { recursiveReadDir } from 'next/dist/lib/recursive-readdir'
|
|
import cp from 'recursive-copy'
|
|
import { join } from 'path'
|
|
|
|
const resolveDataDir = join(__dirname, '..', 'isolated', '_resolvedata')
|
|
const testResolveDataDir = join(__dirname, '..', 'isolated', 'test_resolvedata')
|
|
|
|
describe('recursiveDelete', () => {
|
|
it('should work', async () => {
|
|
await cp(
|
|
resolveDataDir,
|
|
testResolveDataDir,
|
|
{ expand: true }
|
|
)
|
|
|
|
await recursiveDelete(testResolveDataDir)
|
|
const result = await recursiveReadDir(testResolveDataDir, /.*/)
|
|
expect(result.length).toBe(0)
|
|
})
|
|
})
|