UNPKG

mocha-multiple-sessions-detailed-runner

Version:
31 lines (25 loc) 1.25 kB
import { SessionState, SessionResult, DetailedReport, CombinedReport, MultiSessionConfig } from './types'; import { RunnerEventType, SessionEventType, RunnerEvent, SessionEvent } from '../events/index'; import { BatchExecutionOptions } from './batch-execution'; export interface IMultiSessionDetailedRunner { // Core Management init(config?: Partial<MultiSessionConfig>): void; define(label: string, setupFn: () => void): void; run(label: string): Promise<SessionResult>; runAll(options?: BatchExecutionOptions): Promise<Record<string, SessionResult>>; // Report Access getReport(label: string): DetailedReport | null; getSessionStates(): Record<string, SessionState>; getCombinedReport(): CombinedReport; // Event System onRunnerEvent(eventType: RunnerEventType, callback: (event: RunnerEvent) => void): () => void; onSessionEvent(eventType: SessionEventType, callback: (event: SessionEvent) => void): () => void; onAnyEvent(callback: (event: RunnerEvent | SessionEvent) => void): () => void; // State Queries isInitialized(): boolean; hasSession(label: string): boolean; getSessionCount(): number; // Utility clear(): Promise<void>; destroy(): Promise<void>; }