'use strict'; const assert = require('node:assert'); const { computePollMs } = require('../lib/adaptive-poll.js'); let passed = 0; function check(name, fn) { try { fn(); console.log(' ok -', name); passed++; } catch (e) { console.error(' FAIL -', name, e.message); process.exitCode = 1; } } check('visible returns base interval', () => { assert.strictEqual(computePollMs(1000, true), 1000); }); check('hidden doubles the interval, capped at 4s', () => { assert.strictEqual(computePollMs(500, false), 1000); assert.strictEqual(computePollMs(1000, false), 2000); assert.strictEqual(computePollMs(2000, false), 4000); assert.strictEqual(computePollMs(2000, false, { cap: 3000 }), 3000); });