UNPKG

@plugjs/expect5

Version:

Unit Testing for the PlugJS Build System ========================================

36 lines (35 loc) 1.46 kB
import { Hook, Spec, Suite } from './executable'; export interface ExecutionFailure { number: number; error: Error; source: Suite | Spec | Hook; type: 'suite' | 'spec' | 'hook'; } export interface ExecutionEvents { 'suite:start': (suite: Suite) => void; 'suite:done': (suite: Suite, time: number) => void; 'spec:start': (spec: Spec) => void; 'spec:error': (spec: Spec, failure: ExecutionFailure) => void; 'spec:skip': (spec: Spec, time: number) => void; 'spec:pass': (spec: Spec, time: number) => void; 'spec:fail': (spec: Spec, time: number, failure: ExecutionFailure) => void; 'hook:start': (hook: Hook) => void; 'hook:error': (hook: Hook, failure: ExecutionFailure) => void; 'hook:skip': (hook: Hook, time: number) => void; 'hook:pass': (hook: Hook, time: number) => void; 'hook:fail': (hook: Hook, time: number, failure: ExecutionFailure) => void; } export interface Execution { on<E extends keyof ExecutionEvents>(event: E, listener: ExecutionEvents[E]): this; off<E extends keyof ExecutionEvents>(event: E, listener: ExecutionEvents[E]): this; once<E extends keyof ExecutionEvents>(event: E, listener: ExecutionEvents[E]): this; result: Promise<ExecutionResult>; } export interface ExecutionResult { passed: number; failed: number; skipped: number; time: number; failures: ExecutionFailure[]; } export declare function runSuite(suite: Suite): Execution;