'use strict'; // Testcase to produce report via API call const common = require('../common'); common.skipIfReportDisabled(); if (process.argv[2] === 'child') { process.report.triggerReport(); } else { const helper = require('../common/report.js'); const spawn = require('child_process').spawn; const assert = require('assert'); const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); const child = spawn(process.execPath, ['--experimental-report', __filename, 'child'], { cwd: tmpdir.path }); child.on('exit', common.mustCall((code) => { const report_msg = 'No reports found'; const process_msg = 'Process exited unexpectedly'; assert.strictEqual(code, 0, process_msg + ':' + code); const reports = helper.findReports(child.pid, tmpdir.path); assert.strictEqual(reports.length, 1, report_msg); const report = reports[0]; helper.validate(report); })); }