UNPKG

forge-mutation-tester

Version:

Mutation testing tool for Solidity smart contracts using Gambit

96 lines 2.2 kB
export interface RunOptions { repo?: string; localPath?: string; token?: string; branch: string; output: string; openaiKey?: string; model: string; cleanup: boolean; iterative?: boolean; numMutants?: number; includePatterns?: string[]; excludePatterns?: string[]; solcRemappings?: string[]; } export interface MutationConfig { repository?: { url?: string; local_path?: string; branch?: string; token?: string; }; openai?: { api_key?: string; model?: string; }; output?: { directory?: string; cleanup?: boolean; }; testing?: { iterative?: boolean; num_mutants?: number; }; files?: { include?: string[]; exclude?: string[]; }; solidity?: { remappings?: string[]; }; } export interface MutationResult { file: string; line: number; column: number; mutationType: string; original: string; mutated: string; status: 'killed' | 'survived' | 'timeout' | 'error'; testOutput?: string; killReason?: string; mutantId?: string; timestamp?: string; } export interface MutationSession { sessionId: string; timestamp: string; projectPath: string; config: MutationConfig; iterations: MutationIteration[]; summary: MutationSummary; } export interface MutationIteration { iterationNumber: number; timestamp: string; mutationResults: MutationResult[]; generatedTests?: GeneratedTest[]; stats: { total: number; killed: number; survived: number; timeout: number; error: number; }; } export interface TestGap { mutationResult: MutationResult; context: string; suggestedTest?: string; } export interface GeneratedTest { fileName: string; content: string; description: string; targetedMutations: MutationResult[]; } export interface MutationSummary { totalMutations: number; killedMutations: number; survivedMutations: number; mutationScore: number; gaps: TestGap[]; generatedTests: GeneratedTest[]; } //# sourceMappingURL=index.d.ts.map