test: add test for a unref'ed timer leak

PR-URL: https://github.com/iojs/io.js/pull/1330
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
This commit is contained in:
Fedor Indutny 2015-04-04 01:08:20 +03:00
parent d22b2a934a
commit 6f72d87c27

View File

@ -0,0 +1,25 @@
var assert = require('assert');
var called = 0;
var closed = 0;
var timeout = setTimeout(function() {
called++;
}, 10);
timeout.unref();
// Wrap `close` method to check if the handle was closed
var close = timeout._handle.close;
timeout._handle.close = function() {
closed++;
return close.apply(this, arguments);
};
// Just to keep process alive and let previous timer's handle die
setTimeout(function() {
}, 50);
process.on('exit', function() {
assert.equal(called, 1);
assert.equal(closed, 1);
});