Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F5366106
test_timer_refresh.cjs
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
test_timer_refresh.cjs
View Options
const assert = require('node:assert');
let fired = 0;
const timeout = setTimeout(() => {
fired++;
}, 25);
assert.strictEqual(typeof timeout.refresh, 'function');
assert.strictEqual(timeout.refresh(), timeout);
setTimeout(() => {
assert.strictEqual(fired, 0);
timeout.refresh();
}, 10);
setTimeout(() => {
assert.strictEqual(fired, 1);
const interval = setInterval(() => {}, 100);
assert.strictEqual(typeof interval.refresh, 'function');
assert.strictEqual(interval.refresh(), interval);
clearInterval(interval);
}, 80);
let selfRefreshFired = 0;
const selfRefreshing = setTimeout(() => {
selfRefreshFired++;
if (selfRefreshFired === 1) selfRefreshing.refresh();
}, 5);
let postFireRefreshFired = 0;
const postFireRefresh = setTimeout(() => {
postFireRefreshFired++;
}, 5);
const postFireArgs = [];
const postFireWithArgs = setTimeout((value) => {
postFireArgs.push(value);
}, 5, 'kept-arg');
setTimeout(() => {
assert.strictEqual(postFireRefreshFired, 1);
postFireRefresh.refresh();
assert.deepStrictEqual(postFireArgs, ['kept-arg']);
postFireWithArgs.refresh();
}, 20);
setTimeout(() => {
assert.strictEqual(selfRefreshFired, 2);
assert.strictEqual(postFireRefreshFired, 2);
assert.deepStrictEqual(postFireArgs, ['kept-arg', 'kept-arg']);
clearTimeout(postFireRefresh);
clearTimeout(postFireWithArgs);
console.log('timer:refresh:ok');
}, 80);
File Metadata
Details
Attached
Mime Type
application/javascript
Expires
Sun, May 17, 5:59 AM (2 d)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
554508
Default Alt Text
test_timer_refresh.cjs (1 KB)
Attached To
Mode
rANT Ant
Attached
Detach File
Event Timeline
Log In to Comment