cypress-terminal-report
Version:
Better terminal and file output for cypress test logs.
31 lines (30 loc) • 1.26 kB
TypeScript
import type { AllMessages, PluginOptions } from '../installLogsPrinter.types';
export interface IOutputProcecessor {
initialize(): void;
getTarget(): string;
getSpentTime(): number;
write(allMessages: AllMessages): void;
}
export default abstract class BaseOutputProcessor implements IOutputProcecessor {
protected file: string;
protected options: PluginOptions;
protected atChunk: number;
protected chunkSeparator: string;
protected initialContent: string;
protected size: number;
protected specChunksWritten: Record<string, [number, number]>;
protected writeSpendTime: number;
constructor(file: string, options: PluginOptions);
getTarget(): string;
getSpentTime(): number;
initialize(): void;
prepareForWrite(): void;
/** @type { import('./BaseOutputProcessor')['writeSpecChunk']} */
writeSpecChunk(spec: string, chunk: any, pos?: number | null): void;
replaceSpecChunk(spec: string, chunk: string): void;
appendSeparator(pos: number | null): void;
writeAtPosition(data: string, pos: number | null): number;
getAbsolutePositionFromRelative(pos: number | null): number;
hasSpecChunkWritten(spec: string): boolean;
abstract write(allMessages: AllMessages): void;
}