Class UserFuzzRunner
java.lang.Object
org.ek9lang.compiler.fuzz.UserFuzzRunner
Orchestrates user-facing fuzz operations: test generation and mutation testing.
Manages the compile-check loop that filters candidates down to survivors,
and handles output file/directory generation.
Follows the proven pattern from FuzzRunner: generate candidates,
compile-check each through PRE_IR_CHECKS in-process, keep survivors.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordResult of a user fuzz operation. -
Constructor Summary
ConstructorsConstructorDescriptionUserFuzzRunner(SharedThreadContext<CompilableProgram> sharedContext, FileHandling fileHandling, CompilerReporter compilerReporter) -
Method Summary
Modifier and TypeMethodDescriptiongenerateMutations(File sourceFile, String outputDir, long seed, int candidateCount) Mode 2: Generate mutated variants of the given source file.generateTests(File sourceFile, String outputPath, long seed, int candidateCount) Mode 1: Generate edge-case @Test functions for the given source file.
-
Constructor Details
-
Method Details
-
generateTests
public UserFuzzRunner.FuzzResult generateTests(File sourceFile, String outputPath, long seed, int candidateCount) Mode 1: Generate edge-case @Test functions for the given source file.- Parameters:
sourceFile- the .ek9 file to analyzeoutputPath- the output .ek9 file pathseed- reproducibility seed (-1 for random)candidateCount- max candidates to generate (-1 for default)- Returns:
- the fuzz result, or null on failure
-
generateMutations
public UserFuzzRunner.FuzzResult generateMutations(File sourceFile, String outputDir, long seed, int candidateCount) Mode 2: Generate mutated variants of the given source file.- Parameters:
sourceFile- the .ek9 file to mutateoutputDir- the output directory pathseed- reproducibility seed (-1 for random)candidateCount- max candidates to generate (-1 for default)- Returns:
- the fuzz result, or null on failure
-