All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.dakusui.jcunit.utils.CoveringArrayEngines Maven / Gradle / Ivy

There is a newer version: 0.8.17
Show newest version
package com.github.dakusui.jcunit.utils;

import com.github.dakusui.jcunit.core.factor.Factors;
import com.github.dakusui.jcunit.plugins.PluginUtils;
import com.github.dakusui.jcunit.plugins.caengines.CoveringArrayEngine;
import com.github.dakusui.jcunit.plugins.caengines.IPO2CoveringArrayEngine;
import com.github.dakusui.jcunit.plugins.constraints.ConstraintChecker;
import com.github.dakusui.jcunit.runners.core.RunnerContext;

import java.util.Arrays;

/**
 * A collection of convenience methods to instantiate covering array engines.
 */
public enum CoveringArrayEngines {
  ;

  private static CoveringArrayEngine.Builder createSimpleBuilder(
      Factors factors,
      ConstraintChecker constraintChecker,
      Class engineClass,
      String[]... configArgsForEngine
  ) {
    return new CoveringArrayEngine.Builder(
        RunnerContext.DUMMY,
        factors,
        constraintChecker,
        engineClass
    ).setResolver(PluginUtils.StringArrayResolver.INSTANCE).setConfigArgsForEngine(Arrays.asList(configArgsForEngine));
  }

  public static CoveringArrayEngine.Builder createSimpleBuilder(
      Factors factors,
      Class engineClass,
      String[]... arguments) {
    return createSimpleBuilder(
        factors,
        ConstraintChecker.DEFAULT_CONSTRAINT_CHECKER,
        engineClass,
        arguments);
  }


  public static CoveringArrayEngine.Builder createSimpleBuilder(Factors factors) {
    return createSimpleBuilder(factors, IPO2CoveringArrayEngine.class);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy