UNPKG

ctrlshiftleft

Version:

AI-powered toolkit for embedding QA and security testing into development workflows

73 lines (72 loc) 1.68 kB
import { EventEmitter } from 'events'; export interface TestRunnerOptions { browser: string; headless: boolean; timeout: number; reporter: string; workers?: number; filter?: string; retries?: number; verbose?: boolean; updateSnapshots?: boolean; } export interface TestError { message: string; stack?: string; testPath: string; testName?: string; } export interface TestFileResult { path: string; passed: number; failed: number; skipped: number; duration: number; errors: TestError[]; tests: TestResult[]; } export interface TestResult { name: string; status: 'passed' | 'failed' | 'skipped'; duration: number; error?: TestError; } export interface TestResults { total: number; passed: number; failed: number; skipped: number; duration: number; fileResults: TestFileResult[]; errors: TestError[]; } export declare class TestRunner extends EventEmitter { private options; constructor(options: TestRunnerOptions); /** * Run tests from a file or directory * @param testPath Path to test file or directory * @returns Test results */ runTests(testPath: string): Promise<TestResults>; /** * Run a chunk of test files in parallel */ private runTestsChunk; /** * Run tests from a single file */ private runTestFile; /** * Split an array into chunks for parallel processing */ private chunkArray; /** * Launch browser based on options */ private launchBrowser; /** * Get test files from a path (file or directory) */ private getTestFiles; }