From 6f72d87c274f28021ba3bf7056d8faa18e75b4f1 Mon Sep 17 00:00:00 2001 From: Fedor Indutny Date: Sat, 4 Apr 2015 01:08:20 +0300 Subject: [PATCH] test: add test for a unref'ed timer leak PR-URL: https://github.com/iojs/io.js/pull/1330 Reviewed-by: Trevor Norris --- test/parallel/test-timers-unref-leak.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 test/parallel/test-timers-unref-leak.js diff --git a/test/parallel/test-timers-unref-leak.js b/test/parallel/test-timers-unref-leak.js new file mode 100644 index 00000000000000..c8f958a47c40d2 --- /dev/null +++ b/test/parallel/test-timers-unref-leak.js @@ -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); +});