UNPKG

@push.rocks/tapbundle

Version:

A comprehensive testing automation library that provides a wide range of utilities and tools for TAP (Test Anything Protocol) based testing, especially suitable for projects using tapbuffer.

52 lines (51 loc) 1.91 kB
import { type IPreTaskFunction } from './tapbundle.classes.pretask.js'; import { TapTest, type ITestFunction } from './tapbundle.classes.taptest.js'; export declare class Tap<T> { /** * skips a test * tests marked with tap.skip.test() are never executed */ skip: { test: (descriptionArg: string, functionArg: ITestFunction<T>) => void; testParallel: (descriptionArg: string, functionArg: ITestFunction<T>) => void; }; /** * only executes tests marked as ONLY */ only: { test: (descriptionArg: string, testFunctionArg: ITestFunction<T>) => void; }; private _tapPreTasks; private _tapTests; private _tapTestsOnly; /** * Normal test function, will run one by one * @param testDescription - A description of what the test does * @param testFunction - A Function that returns a Promise and resolves or rejects */ test(testDescription: string, testFunction: ITestFunction<T>, modeArg?: 'normal' | 'only' | 'skip'): TapTest<T>; preTask(descriptionArg: string, functionArg: IPreTaskFunction): void; /** * A parallel test that will not be waited for before the next starts. * @param testDescription - A description of what the test does * @param testFunction - A Function that returns a Promise and resolves or rejects */ testParallel(testDescription: string, testFunction: ITestFunction<T>): void; /** * starts the test evaluation */ start(optionsArg?: { throwOnError: boolean; }): Promise<void>; stopForcefully(codeArg?: number, directArg?: boolean): Promise<void>; /** * handle errors */ threw(err: Error): void; /** * Explicitly fail the current test with a custom message * @param message - The failure message to display */ fail(message?: string): never; } export declare let tap: Tap<unknown>;