silverbullet/common/space_lua/util.test.ts

22 lines
606 B
TypeScript

import { evalPromiseValues } from "$common/space_lua/util.ts";
import { assertEquals } from "@std/assert/equals";
import { assert } from "@std/assert";
Deno.test("Test promise helpers", async () => {
const r = evalPromiseValues([1, 2, 3]);
// should return the same array not as a promise
assertEquals(r, [1, 2, 3]);
const asyncR = evalPromiseValues([
new Promise((resolve) => {
setTimeout(() => {
resolve(1);
}, 5);
}),
Promise.resolve(2),
3,
]);
// should return a promise
assert(asyncR instanceof Promise);
assertEquals(await asyncR, [1, 2, 3]);
});