mocha-multiple-sessions-detailed-runner
Version:
High-level API for multi-session Mocha tests with detailed reporting
33 lines (27 loc) • 1.03 kB
text/typescript
import type { DetailedReport } from '../core/types';
export interface IReportRepository {
// Basic report access
getReportData(resultKey: string): any | null;
hasReport(resultKey: string): boolean;
clearReport(resultKey: string): void;
// Enhanced report management
getAllReports(): Record<string, any>;
getReportMetadata(resultKey: string): ReportMetadata | null;
waitForReport(resultKey: string, timeoutMs?: number): Promise<any>;
watchReport(resultKey: string, callback: (report: any) => void): () => void;
// Window variable management
generateResultKey(sessionLabel: string): string;
getWindowVariable(key: string): any;
setWindowVariable(key: string, value: any): void;
deleteWindowVariable(key: string): void;
// Report utilities
getReportSize(resultKey: string): number;
validateReport(reportData: any): boolean;
}
export interface ReportMetadata {
size: number;
generatedAt: Date;
sessionLabel: string;
stats: any;
isValid: boolean;
}