From 86639fe62a8b94fe68c64846d18de4dcf16c09e6 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Wed, 2 Nov 2022 00:14:32 -0700 Subject: Improve async function handling code in setTimeout and setInterval Should fix --- test/bun.js/setInterval.test.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'test/bun.js/setInterval.test.js') diff --git a/test/bun.js/setInterval.test.js b/test/bun.js/setInterval.test.js index f633998cd..de219b92f 100644 --- a/test/bun.js/setInterval.test.js +++ b/test/bun.js/setInterval.test.js @@ -33,3 +33,19 @@ it("clearInterval", async () => { }); expect(called).toBe(false); }); + +it("async setInterval", async () => { + var remaining = 5; + await new Promise((resolve, reject) => { + queueMicrotask(() => { + var id = setInterval(async () => { + await 1; + remaining--; + if (remaining === 0) { + clearInterval(id); + resolve(); + } + }, 1); + }); + }); +}); -- cgit v1.2.3