UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

109 lines (108 loc) 3.49 kB
import { SpruceTestResults, TestRunnerStatus } from './test.types'; export default class TestReporter { private started; private table?; private bar; private bottomLayout; private testLog; private errorLog?; private errorLogItemGenerator; private lastResults; private updateInterval?; private menu; private statusBar; private window; private widgets; private selectTestPopup?; private topLayout; private filterInput; private filterPattern?; private clearFilterPatternButton; private isDebugging; private watchMode; private status; private countDownTimeInterval?; private cwd; private orientation; private handleStartStop?; private handleRestart?; private handleQuit?; private handleRerunTestFile?; private handleFilterChange?; private handleOpenTestFile?; private handleToggleDebug?; private handleToggleRpTraining?; private handletoggleStandardWatch?; private handleToggleSmartWatch?; private minWidth; private isRpTraining; private trainingTokenPopup?; constructor(options?: TestReporterOptions); setFilterPattern(pattern: string | undefined): void; setIsDebugging(isDebugging: boolean): void; setIsRpTraining(isRpTraining: boolean): void; startCountdownTimer(durationSec: number): void; stopCountdownTimer(): void; setWatchMode(watchMode: WatchMode): void; private setWatchLabel; private setLabelStatus; start(): Promise<void>; private handleWindowResize; private updateOrientation; private dropInMenu; setStatus(status: TestRunnerStatus): void; private updateMenuLabels; private handleMenuSelect; private handleUpdateInterval; private refreshResults; private handleGlobalKeypress; private dropInTestLog; private handleClickTestLog; askForTrainingToken(): Promise<void>; private closeSelectTestPopup; private dropInSelectTestPopup; private openTestFile; getFileForLine(row: number): string | undefined; private dropInProgressBar; private dropInFilterControls; private dropInBottomLayout; private dropInStatusBar; private dropInTopLayout; updateResults(results: SpruceTestResults): void; private updateLogs; private resultsToLogContents; private dropInErrorLog; private destroyErrorLog; private updateProgressBar; private generateProgressStats; private generatePercentComplete; private generatePercentPassing; private getTotalTestFilesRun; render(): void; destroy(): Promise<void>; reset(): void; setStatusLabel(text: string): void; appendError(message: string): void; } interface TestReporterOptions { handleStartStop?: () => void; handleRestart?: () => void; handleQuit?: () => void; onRequestOpenTestFile?: () => void; handleRerunTestFile?: (fileName: string) => void; handleOpenTestFile?: (fileName: string) => void; handleFilterPatternChange?: (pattern?: string) => void; handleToggleDebug?: () => void; handletoggleStandardWatch?: () => void; handleToggleSmartWatch?: () => void; handleToggleRpTraining?: () => void; filterPattern?: string; isDebugging?: boolean; isRpTraining?: boolean; watchMode?: WatchMode; status?: TestRunnerStatus; cwd?: string; } export type TestReporterOrientation = 'landscape' | 'portrait'; export type WatchMode = 'off' | 'standard' | 'smart'; export {};