public final class BranchEngine extends java.lang.Object implements Engine<BranchSolution>
BranchEngine
implements a test engine that constructs test cases by enumerating
feasible execution traces of bounded length.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
GOTO_SITUATION_SUFFIX |
static java.lang.String |
IF_THEN_SITUATION_SUFFIX |
static java.lang.String |
PARAM_BRANCH_LIMIT
Maximum number of executions of a single branch instruction.
|
static int |
PARAM_BRANCH_LIMIT_DEFAULT |
static java.lang.String |
PARAM_TRACE_LIMIT
Maximum number of execution traces to be enumerated.
|
static int |
PARAM_TRACE_LIMIT_DEFAULT |
Constructor and Description |
---|
BranchEngine() |
Modifier and Type | Method and Description |
---|---|
void |
configure(java.util.Map<java.lang.String,java.lang.Object> attributes) |
java.lang.Class<BranchSolution> |
getSolutionClass() |
static boolean |
isGoto(Call abstractCall) |
static boolean |
isIfThen(Call abstractCall) |
void |
onEndProgram() |
void |
onStartProgram() |
EngineResult<BranchSolution> |
solve(EngineContext engineContext,
java.util.List<Call> abstractSequence) |
public static final java.lang.String PARAM_BRANCH_LIMIT
public static final int PARAM_BRANCH_LIMIT_DEFAULT
public static final java.lang.String PARAM_TRACE_LIMIT
public static final int PARAM_TRACE_LIMIT_DEFAULT
public static final java.lang.String IF_THEN_SITUATION_SUFFIX
public static final java.lang.String GOTO_SITUATION_SUFFIX
public static boolean isIfThen(Call abstractCall)
public static boolean isGoto(Call abstractCall)
public java.lang.Class<BranchSolution> getSolutionClass()
getSolutionClass
in interface Engine<BranchSolution>
public void configure(java.util.Map<java.lang.String,java.lang.Object> attributes)
configure
in interface Engine<BranchSolution>
public EngineResult<BranchSolution> solve(EngineContext engineContext, java.util.List<Call> abstractSequence)
solve
in interface Engine<BranchSolution>
public void onStartProgram()
onStartProgram
in interface Engine<BranchSolution>
public void onEndProgram()
onEndProgram
in interface Engine<BranchSolution>