Class IpogConfiguration.Builder
- java.lang.Object
-
- de.rwth.swc.coffee4j.engine.generator.ipog.IpogConfiguration.Builder
-
- Enclosing class:
- IpogConfiguration
public static final class IpogConfiguration.Builder extends java.lang.ObjectA implementation of the Builder patter to create a newIpogConfiguration.
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IpogConfigurationbuild()IpogConfiguration.Builderchecker(ConstraintChecker checker)IpogConfiguration.Builderfactory(ParameterCombinationFactory factory)IpogConfiguration.Buildermodel(InputParameterModel model)IpogConfiguration.Builderorder(ParameterOrder order)IpogConfiguration.Builderreporter(Reporter reporter)
-
-
-
Method Detail
-
model
public IpogConfiguration.Builder model(InputParameterModel model)
- Parameters:
model- used to generate the test suite. As this contains all main information and the algorithm cannot work without it, this parameter is required. If it is not set beforebuild()is called, aNullPointerExceptionwill be thrown- Returns:
- this
-
checker
public IpogConfiguration.Builder checker(ConstraintChecker checker)
- Parameters:
checker- used to check whether a test input generated by ipog is valid. This is an optional field. If it is not set, the defaultNoConstraintCheckerwill be used- Returns:
- this
-
factory
public IpogConfiguration.Builder factory(ParameterCombinationFactory factory)
- Parameters:
factory- used to generate all parameter combinations which IPOG needs to cover. This is an optional field. If it is not set, the defaultTWiseParameterCombinationFactorywill be used- Returns:
- this
-
order
public IpogConfiguration.Builder order(ParameterOrder order)
- Parameters:
order- used to determine in which order the parameters are included into the test suite during the horizontal expansion of IPOG. This is an optional field. If not set, the default ofStrengthBasedParameterOrderis used for a more optimal generation time and test suite size- Returns:
- this
-
reporter
public IpogConfiguration.Builder reporter(Reporter reporter)
- Parameters:
reporter- a reporter which should be used to carry important information to the outside. This is an optional field. If not set, the default of a no operation reporter is used- Returns:
- this
-
build
public IpogConfiguration build()
- Returns:
- a new complete configuration which can be used to construct an instance of
IpogAlgorithm - Throws:
java.lang.NullPointerException- if any parameter has been set tonullor if the model has not been set
-
-