fava
Version:
A wannabe tiny largely-drop-in replacement for ava that works in the browser too.
55 lines (54 loc) • 2.89 kB
TypeScript
import type { FN, Promisable, Color, Teardown, TestAPI, TestContext, TestFlags, TestImplementation, TestLog, TestPassed, TestStats, TestStatus } from './types';
declare class Tester<Context extends {} = {}> {
ctx: TestContext<Context>;
duration: number;
executed: boolean;
flags: TestFlags;
implementation: TestImplementation<Context>;
logs: TestLog[];
timeoutMessage: string;
timeoutMs: number;
passed: TestPassed;
prefixes: string[];
stats: TestStats;
teardowns: Teardown[];
title: string;
constructor(title: string, implementation: TestImplementation<Context>, flags: TestFlags);
private makeAssertion;
private wrapApi;
private wrapAssert;
private wrapCall;
private wrapEnv;
private wrapLogger;
private wrapTimeout;
private wrapTimer;
api: () => TestAPI<Context>;
call: () => Promise<void>;
execute: () => Promise<void>;
result: (passed: TestPassed, status: TestStatus, statusColor: Color, error?: Error | string) => Promise<void>;
log: (...values: TestLog[]) => void;
plan: (count: number) => void;
teardown: (fn: Teardown) => void;
timeout: (ms: number, message?: string) => void;
pass: FN<[message?: string | undefined], void>;
fail: FN<[message?: string | undefined], void>;
assert: FN<[value: unknown, message?: string | undefined], void>;
truthy: FN<[value: unknown, message?: string | undefined], void>;
falsy: FN<[value: unknown, message?: string | undefined], void>;
true: FN<[value: unknown, message?: string | undefined], void>;
false: FN<[value: unknown, message?: string | undefined], void>;
is: FN<[value: unknown, expected: unknown, message?: string | undefined], void>;
not: FN<[value: unknown, expected: unknown, message?: string | undefined], void>;
deepEqual: FN<[value: unknown, expected: unknown, message?: string | undefined], void>;
notDeepEqual: FN<[value: unknown, expected: unknown, message?: string | undefined], void>;
like: FN<[value: unknown, partial: unknown, message?: string | undefined], void>;
notLike: FN<[value: unknown, partial: unknown, message?: string | undefined], void>;
throws: FN<[fn: () => void, expectation?: import("./types").AssertErrorExpectation | undefined, message?: string | undefined], void>;
throwsAsync: FN<[fn: () => Promisable<void>, expectation?: import("./types").AssertErrorExpectation | undefined, message?: string | undefined], Promise<void>>;
notThrows: FN<[fn: () => void, message?: string | undefined], void>;
notThrowsAsync: FN<[fn: () => Promisable<void>, message?: string | undefined], Promise<void>>;
regex: FN<[str: string, regex: RegExp, message?: string | undefined], void>;
notRegex: FN<[str: string, regex: RegExp, message?: string | undefined], void>;
wait: (ms: number) => Promise<void>;
}
export default Tester;