mochapack
Version:
mocha cli with webpack support
19 lines (17 loc) • 537 B
text/typescript
import { Compiler, Stats } from 'webpack'
import { MOCHAPACK_NAME } from '../../util/constants'
export default function registerReadyCallback(
compiler: Compiler,
cb: (err: Error, stats: Stats) => void
) {
compiler.hooks.failed.tap(MOCHAPACK_NAME, (error: Error) => cb(error, null))
compiler.hooks.done.tap(MOCHAPACK_NAME, (stats: Stats) => {
if (stats.hasErrors()) {
const jsonStats = stats.toJson()
const [err] = jsonStats.errors
cb(err as Error, stats)
} else {
cb(null, stats)
}
})
}