mocha-multiple-sessions-detailed-runner
Version:
High-level API for multi-session Mocha tests with detailed reporting
25 lines • 1.57 kB
TypeScript
import type { IReportService } from '../../interfaces/services/report-service';
import type { DetailedReport, CombinedReport } from '../../interfaces/core/types';
import type { ReportSummary } from '../../interfaces/use-cases/report-use-cases';
import type { IReportRepository } from '../../interfaces/repositories/report-repository';
import type { ISessionMetaRepository } from '../../interfaces/repositories/session-meta-repository';
import type { IUnifiedEventBus } from '../../interfaces/events/unified-event-bus';
export declare class ReportService implements IReportService {
private reportRepository;
private sessionRepository;
private eventBus;
constructor(reportRepository: IReportRepository, sessionRepository: ISessionMetaRepository, eventBus: IUnifiedEventBus);
getSessionReport(label: string): DetailedReport | null;
waitForSessionReport(label: string, timeoutMs?: number): Promise<DetailedReport>;
hasSessionReport(label: string): boolean;
generateCombinedReport(): CombinedReport;
getCombinedReportAsync(): Promise<CombinedReport>;
watchSessionReport(label: string, callback: (report: DetailedReport) => void): () => void;
watchAllReports(callback: (sessionLabel: string, report: DetailedReport) => void): () => void;
getReportSummary(): ReportSummary;
exportReports(format: 'json' | 'html'): Promise<string>;
clearAllReports(): void;
validateSessionReport(sessionLabel: string): boolean;
getReportValidationErrors(sessionLabel: string): string[];
}
//# sourceMappingURL=report-service.d.ts.map