nodejs-mozilla/test/parallel/test-timers-active.js

35 lines
870 B
JavaScript

'use strict';
require('../common');
const assert = require('assert');
const active = require('timers').active;
// active() should create timers for these
const legitTimers = [
{ _idleTimeout: 0 },
{ _idleTimeout: 1 }
];
legitTimers.forEach(function(legit) {
const savedTimeout = legit._idleTimeout;
active(legit);
// active() should mutate these objects
assert.strictEqual(legit._idleTimeout, savedTimeout);
assert(Number.isInteger(legit._idleStart));
assert(legit._idleNext);
assert(legit._idlePrev);
});
// active() should not create a timer for these
const bogusTimers = [
{ _idleTimeout: -1 },
{ _idleTimeout: undefined },
];
bogusTimers.forEach(function(bogus) {
const savedTimeout = bogus._idleTimeout;
active(bogus);
// active() should not mutate these objects
assert.deepStrictEqual(bogus, { _idleTimeout: savedTimeout });
});