9 lines
343 B
TypeScript
9 lines
343 B
TypeScript
/** Injectable sleep. Tests replace it with an immediate one via `setSleep`. */
|
|
let sleepImpl: (ms: number) => Promise<void> = (ms) => Bun.sleep(ms);
|
|
|
|
export function setSleep(fn: ((ms: number) => Promise<void>) | null): void {
|
|
sleepImpl = fn ?? ((ms) => Bun.sleep(ms));
|
|
}
|
|
|
|
export const sleep = (ms: number): Promise<void> => sleepImpl(ms);
|