aboutsummaryrefslogtreecommitdiff
path: root/test/js/web/timers/setInterval.test.js
diff options
context:
space:
mode:
authorGravatar Ciro Spaciari <ciro.spaciari@gmail.com> 2023-05-14 14:18:56 -0300
committerGravatar GitHub <noreply@github.com> 2023-05-14 10:18:56 -0700
commitbf9e40d5b49f1ed16ea9abed4e231456dcda99c0 (patch)
treea803971285c5f4329bbee4ef025151baaf91c817 /test/js/web/timers/setInterval.test.js
parent2a66229b0f9aabf96891afe3063e07ec877527ca (diff)
downloadbun-bf9e40d5b49f1ed16ea9abed4e231456dcda99c0.tar.gz
bun-bf9e40d5b49f1ed16ea9abed4e231456dcda99c0.tar.zst
bun-bf9e40d5b49f1ed16ea9abed4e231456dcda99c0.zip
feat(Timer.refresh) add refresh support on Timer (#2874)
* add refresh support on Timer * fix this return * add refresh setTimeout tests * fix tests and add setInterval test * use setCached for arguments and callback --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
Diffstat (limited to 'test/js/web/timers/setInterval.test.js')
-rw-r--r--test/js/web/timers/setInterval.test.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/js/web/timers/setInterval.test.js b/test/js/web/timers/setInterval.test.js
index 7b03afba5..b4215eef2 100644
--- a/test/js/web/timers/setInterval.test.js
+++ b/test/js/web/timers/setInterval.test.js
@@ -59,3 +59,17 @@ it("async setInterval", async () => {
});
});
});
+
+it("setInterval if refreshed before run, should reschedule to run later", done => {
+ let start = Date.now();
+ let timer = setInterval(() => {
+ let end = Date.now();
+ clearInterval(timer);
+ expect(end - start).toBeGreaterThanOrEqual(150);
+ done();
+ }, 100);
+
+ setTimeout(() => {
+ timer.refresh();
+ }, 50);
+});