Class OptimalValue
- java.lang.Object
-
- de.rwth.swc.coffee4j.algorithmic.interleaving.util.OptimalValue
-
public final class OptimalValue extends Object
Utility class for generating test inputs used byTestInputGenerationStrategy
orIdentificationStrategy
-
-
Constructor Summary
Constructors Constructor Description OptimalValue()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Optional<ParameterValuePair>
forParameter(int parameter, int numberOfValues, it.unimi.dsi.fastutil.ints.IntSet forbiddenValues, int[] testInput, CoverageMap coverageMap, ConstraintChecker checker)
static Optional<ParameterValuePair>
mostDissimilarForParameter(int parameter, int numberOfValues, int[] testInput, List<int[]> executedTestInputs, ConstraintChecker checker)
static Optional<ParameterValuePair>
valueForParameter(int parameter, int numberOfValues, int[] testInput, Set<it.unimi.dsi.fastutil.ints.IntList> executedTestInputs, ConstraintChecker checker)
-
-
-
Method Detail
-
forParameter
public Optional<ParameterValuePair> forParameter(int parameter, int numberOfValues, it.unimi.dsi.fastutil.ints.IntSet forbiddenValues, int[] testInput, CoverageMap coverageMap, ConstraintChecker checker)
- Parameters:
parameter
- parameter to find an optimal value fornumberOfValues
- number of possible values the given parameter can takeforbiddenValues
- values that must not be assigned to the parametertestInput
- partial test input generated so far and which needs to be extendedcoverageMap
- containing all uncovered combinationschecker
- Constraint Checker to ensure that assigned value is valid in given test input- Returns:
- valid value for given parameter covering most uncovered t-tuples
-
mostDissimilarForParameter
public static Optional<ParameterValuePair> mostDissimilarForParameter(int parameter, int numberOfValues, int[] testInput, List<int[]> executedTestInputs, ConstraintChecker checker)
- Parameters:
parameter
- parameter to find a valid value fornumberOfValues
- number of possible values the given parameter can taketestInput
- partial test input generated so far and which needs to be extendedexecutedTestInputs
- all test inputs generated and executed so far. Next test inputs must be as different as possiblechecker
- Constraint checker to ensure that assigned value is valid in given test input- Returns:
- valid value for given parameter that is most dissimilar to already executed test inputs
-
valueForParameter
public static Optional<ParameterValuePair> valueForParameter(int parameter, int numberOfValues, int[] testInput, Set<it.unimi.dsi.fastutil.ints.IntList> executedTestInputs, ConstraintChecker checker)
- Parameters:
parameter
- parameter to find a value fornumberOfValues
- number of possible values the given parameter can taketestInput
- partial test input generated so far and which needs to be extendedexecutedTestInputs
- all test inputs generated and executed so far. Next test inputs must not represent sub- combinations of them.checker
- Constraint checker to ensure that assigned value is valid in given test input.- Returns:
- valid value extending the given partial test input for the given parameter.
-
-