UNPKG

@lou.codes/test

Version:

✅ Equality test with enforced readability

30 lines (29 loc) 807 B
import type { Differences } from "./Differences.js"; import type { Test } from "./Test.js"; /** * Takes a `Test` object and returns a promise with a `TestResult`. * * @category Test * @example * ```typescript * evaluate({ * given: "🟢", * must: "🟩", * received: () => "🟩", * wanted: () => "🟩", * }); // Promise<{ given: "🟢", , must: "🟩" }> * evaluate({ * given: "🟢", * must: "🟩", * received: () => "❌", * wanted: () => "🟩", * }); // Promise<{ differences: […], given: "🟢", , must: "🟩" }> * ``` * @param testDescription A `Test` object. * @returns A promise with a `TestResult` object. */ export declare const evaluate: <Value>(testDescription: Test<Value>) => Promise<{ given: string; must: string; differences?: Differences; }>;