aboutsummaryrefslogtreecommitdiff
path: root/test/bun.js/setTimeout.test.js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-22 23:21:48 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-22 23:21:48 -0700
commit729d445b6885f69dd2c6355f38707bd42851c791 (patch)
treef87a7c408929ea3f57bbb7ace380cf869da83c0e /test/bun.js/setTimeout.test.js
parent25f820c6bf1d8ec6d444ef579cc036b8c0607b75 (diff)
downloadbun-jarred/rename.tar.gz
bun-jarred/rename.tar.zst
bun-jarred/rename.zip
change the directory structurejarred/rename
Diffstat (limited to 'test/bun.js/setTimeout.test.js')
-rw-r--r--test/bun.js/setTimeout.test.js39
1 files changed, 39 insertions, 0 deletions
diff --git a/test/bun.js/setTimeout.test.js b/test/bun.js/setTimeout.test.js
new file mode 100644
index 000000000..55f71712c
--- /dev/null
+++ b/test/bun.js/setTimeout.test.js
@@ -0,0 +1,39 @@
+import { it, expect } from "bun:test";
+
+it("setTimeout", async () => {
+ var lastID = -1;
+ const result = await new Promise((resolve, reject) => {
+ var numbers = [];
+
+ for (let i = 1; i < 100; i++) {
+ const id = setTimeout(() => {
+ numbers.push(i);
+ if (i === 99) {
+ resolve(numbers);
+ }
+ }, i);
+ expect(id > lastID).toBe(true);
+ lastID = id;
+ }
+ });
+
+ for (let j = 0; j < result.length; j++) {
+ expect(result[j]).toBe(j + 1);
+ }
+ expect(result.length).toBe(99);
+});
+
+it("clearTimeout", async () => {
+ var called = false;
+ const id = setTimeout(() => {
+ called = true;
+ expect(false).toBe(true);
+ }, 1);
+ clearTimeout(id);
+ await new Promise((resolve, reject) => {
+ setTimeout(() => {
+ resolve();
+ }, 10);
+ });
+ expect(called).toBe(false);
+});