Add unit tests for util functions: iife, lazy, timeout (#3791)

This commit is contained in:
James Alexander
2025-11-03 09:24:45 -05:00
committed by GitHub
parent 573ffe186b
commit 37a6b5177e
3 changed files with 107 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
import { describe, expect, test } from "bun:test"
import { withTimeout } from "../../src/util/timeout"
describe("util.timeout", () => {
test("should resolve when promise completes before timeout", async () => {
const fastPromise = new Promise<string>((resolve) => {
setTimeout(() => resolve("fast"), 10)
})
const result = await withTimeout(fastPromise, 100)
expect(result).toBe("fast")
})
test("should reject when promise exceeds timeout", async () => {
const slowPromise = new Promise<string>((resolve) => {
setTimeout(() => resolve("slow"), 200)
})
await expect(withTimeout(slowPromise, 50)).rejects.toThrow("Operation timed out after 50ms")
})
})