import { assertEquals } from "../../test_deps.ts"; import { PromiseQueue, sleep } from "./async.ts"; Deno.test("PromiseQueue test", async () => { const q = new PromiseQueue(); let r1RanFirst = false; const r1 = q.runInQueue(async () => { await sleep(10); r1RanFirst = true; console.log("1"); return 1; }); const r2 = q.runInQueue(async () => { console.log("2"); await sleep(4); return 2; }); console.log(await Promise.all([r1, r2])); assertEquals(r1RanFirst, true); });