diff options
Diffstat (limited to 'test/sequential/test-cpu-prof-dir-and-name.js')
-rw-r--r-- | test/sequential/test-cpu-prof-dir-and-name.js | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/test/sequential/test-cpu-prof-dir-and-name.js b/test/sequential/test-cpu-prof-dir-and-name.js new file mode 100644 index 0000000000..7ce775ebc1 --- /dev/null +++ b/test/sequential/test-cpu-prof-dir-and-name.js @@ -0,0 +1,47 @@ +'use strict'; + +// This tests that --cpu-prof-dir and --cpu-prof-name works together. + +const common = require('../common'); +const fixtures = require('../common/fixtures'); +common.skipIfInspectorDisabled(); + +const assert = require('assert'); +const fs = require('fs'); +const path = require('path'); +const { spawnSync } = require('child_process'); + +const tmpdir = require('../common/tmpdir'); +const { + getCpuProfiles, + kCpuProfInterval, + env, + verifyFrames +} = require('../common/cpu-prof'); + +{ + tmpdir.refresh(); + const dir = path.join(tmpdir.path, 'prof'); + const file = path.join(dir, 'test.cpuprofile'); + const output = spawnSync(process.execPath, [ + '--cpu-prof', + '--cpu-prof-interval', + kCpuProfInterval, + '--cpu-prof-name', + 'test.cpuprofile', + '--cpu-prof-dir', + dir, + fixtures.path('workload', 'fibonacci.js'), + ], { + cwd: tmpdir.path, + env + }); + if (output.status !== 0) { + console.log(output.stderr.toString()); + } + assert.strictEqual(output.status, 0); + assert(fs.existsSync(dir)); + const profiles = getCpuProfiles(dir); + assert.deepStrictEqual(profiles, [file]); + verifyFrames(output, file, 'fibonacci.js'); +} |