test: add inspect-brk option to cluster module

Ensure that cluster interoperates with the --inspect-brk option.
This does not test for --debug-brk.

Fixes: https://github.com/nodejs/node/issues/11420
PR-URL: https://github.com/nodejs/node/pull/12503
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This commit is contained in:
dave-k 2017-04-18 19:09:27 -07:00 committed by Anna Henningsen
parent a3132b0aa5
commit 0324ac686c
No known key found for this signature in database
GPG Key ID: D8B9F5AEAE84E4CF

View File

@ -0,0 +1,36 @@
'use strict';
const common = require('../common');
// A test to ensure that cluster properly interoperates with the
// --inspect-brk option.
const assert = require('assert');
const cluster = require('cluster');
const debuggerPort = common.PORT;
if (cluster.isMaster) {
function test(execArgv) {
cluster.setupMaster({
execArgv: execArgv,
stdio: ['pipe', 'pipe', 'pipe', 'ipc', 'pipe']
});
const worker = cluster.fork();
// Debugger listening on port [port].
worker.process.stderr.once('data', common.mustCall(function() {
worker.process.kill('SIGTERM');
}));
worker.process.on('exit', common.mustCall(function(code, signal) {
assert.strictEqual(signal, 'SIGTERM');
}));
}
test(['--inspect-brk']);
test([`--inspect-brk=${debuggerPort}`]);
} else {
// Cluster worker is at a breakpoint, should not reach here.
assert.fail('Test failed: cluster worker should be at a breakpoint.');
}