mocha-multiple-sessions-detailed-runner
Version:
High-level API for multi-session Mocha tests with detailed reporting
27 lines (21 loc) • 1.03 kB
text/typescript
import type { DetailedReport, CombinedReport } from '../core/types';
import type { ReportSummary } from '../use-cases/report-use-cases';
export interface IReportService {
// Single session reports
getSessionReport(label: string): DetailedReport | null;
waitForSessionReport(label: string, timeoutMs?: number): Promise<DetailedReport>;
hasSessionReport(label: string): boolean;
// Combined reports
generateCombinedReport(): CombinedReport;
getCombinedReportAsync(): Promise<CombinedReport>;
// Report watching
watchSessionReport(label: string, callback: (report: DetailedReport) => void): () => void;
watchAllReports(callback: (sessionLabel: string, report: DetailedReport) => void): () => void;
// Utilities
getReportSummary(): ReportSummary;
exportReports(format: 'json' | 'html'): Promise<string>;
clearAllReports(): void;
// Validation
validateSessionReport(sessionLabel: string): boolean;
getReportValidationErrors(sessionLabel: string): string[];
}