node/test/parallel/test-cluster-disconnect-unshared-udp.js
Jeremiah Senkpiel 4067cde7ee test: abstract skip functionality to common
The tap skipping output is so prevalent yet obscure in nature that we
ought to move it into it's own function in test/common.js

Re-do of 52bae222a3 for v4.x

Ref: https://github.com/nodejs/node/pull/6697
PR-URL: https://github.com/nodejs/node/pull/7114
Reviewed-By: Myles Borins <myles.borins@gmail.com>
2016-06-23 17:25:10 -07:00

30 lines
603 B
JavaScript

'use strict';
const common = require('../common');
if (common.isWindows) {
common.skip('on windows, because clustered dgram is ENOTSUP');
return;
}
var cluster = require('cluster');
var dgram = require('dgram');
if (cluster.isMaster) {
var unbound = cluster.fork().on('online', bind);
function bind() {
cluster.fork({BOUND: 'y'}).on('listening', disconnect);
}
function disconnect() {
unbound.disconnect();
unbound.on('disconnect', cluster.disconnect);
}
} else {
if (process.env.BOUND === 'y') {
var source = dgram.createSocket('udp4');
source.bind(0);
}
}