2015-05-19 13:00:06 +02:00
|
|
|
'use strict';
|
2015-12-23 16:02:12 -08:00
|
|
|
require('../common');
|
2015-01-02 23:14:25 -05:00
|
|
|
var assert = require('assert');
|
|
|
|
var net = require('net');
|
|
|
|
var closed = false;
|
|
|
|
var server = net.createServer();
|
|
|
|
|
|
|
|
// unref before listening
|
|
|
|
server.unref();
|
|
|
|
server.listen();
|
|
|
|
|
|
|
|
// If the timeout fires, that means the server held the event loop open
|
|
|
|
// and the unref() was not persistent. Close the server and fail the test.
|
|
|
|
setTimeout(function() {
|
|
|
|
closed = true;
|
|
|
|
server.close();
|
|
|
|
}, 1000).unref();
|
|
|
|
|
|
|
|
process.on('exit', function() {
|
|
|
|
assert.strictEqual(closed, false, 'server should not hold loop open');
|
|
|
|
});
|