aboutsummaryrefslogtreecommitdiff
path: root/node_modules/nyc/lib/self-coverage-helper.js
blob: 675f9bea970864c926a6bfd5c65eba0b04de4de3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* global ___NYC_SELF_COVERAGE___ */

const path = require('path')
const fs = require('fs')
const mkdirp = require('mkdirp')
const onExit = require('signal-exit')

onExit(function () {
  var coverage = global.___NYC_SELF_COVERAGE___
  if (typeof ___NYC_SELF_COVERAGE___ === 'object') coverage = ___NYC_SELF_COVERAGE___
  if (!coverage) return

  var selfCoverageDir = path.join(__dirname, '../.self_coverage')
  mkdirp.sync(selfCoverageDir)
  fs.writeFileSync(
    path.join(selfCoverageDir, process.pid + '.json'),
    JSON.stringify(coverage),
    'utf-8'
  )
})