Packages

package testkit

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package services

Type Members

  1. final case class TestConfig(pluginConfig: PluginConfig, bootstrapPluginConfig: PluginConfig = PluginConfig.empty, activation: distage.Activation = StandardAxis.testProdActivation, moduleOverrides: distage.Module = Module.empty, bootstrapOverrides: distage.BootstrapModule = BootstrapModule.empty, memoizationRoots: PriorAxisDIKeys = PriorAxisDIKeys.empty, forcedRoots: AxisDIKeys = AxisDIKeys.empty, parallelEnvs: ParallelLevel = ParallelLevel.Unlimited, parallelSuites: ParallelLevel = ParallelLevel.Unlimited, parallelTests: ParallelLevel = ParallelLevel.Unlimited, configBaseName: String, configOverrides: Option[distage.config.AppConfig] = None, bootstrapFactory: BootstrapFactory = BootstrapFactory.Impl, planningOptions: PlanningOptions = PlanningOptions(), logLevel: Level = Log.Level.Info, debugOutput: Boolean = false) extends Product with Serializable

    General options:

    General options:

    pluginConfig

    Source of module definitions from which to build object graphs for each test. Changes to izumi.distage.plugins.PluginConfig that alter implementations of components in memoizationRoots OR their dependencies will cause the test to execute in a new memoization environment, check the initial log output in tests for information about the memoization environments in your tests. Components specified in memoizationRoots will be memoized only for the tests in the same memoization environment.

    bootstrapPluginConfig

    Same as pluginConfig, but for izumi.distage.model.definition.BootstrapModule. Every distinct bootstrapPluginConfig will create a distinct memoization environment.

    activation

    Chosen activation axes. Changes in izumi.distage.model.definition.Activation that alter implementations of components in memoizationRoots OR their dependencies will cause the test to execute in a new memoization environment, check the initial log output in tests for information about the memoization environments in your tests.

    moduleOverrides

    Override loaded plugins with a given Module. As long as overriden bindings are not memoized, or dependencies of memoized components, using overrides will NOT create a new memoization environment. Changes to moduleOverrides that alter implementations of components in memoizationRoots OR their dependencies will cause the test to execute in a new memoization environment, check the initial log output in tests for information about the memoization environments in your tests.

    bootstrapOverrides

    Same as moduleOverrides, but for BootstrapModule Every distinct bootstrapPluginConfig will create a distinct memoization environment. Parallelism options:

    memoizationRoots

    Specifies the components that will be created *once* and shared across all tests within the same memoization environment (i.e. with the same TestConfig) Every distinct set of memoizationRoots will create a distinct memoization environment

    forcedRoots

    Specifies components that will be treated as if they are a dependency of every test within this memoization environment. Components designated as forced roots will not be garbage collected even if there are no components or tests that depend on them. When combined with memoizationRoots, a distage.Lifecycle binding can be used to implement a global start/stop action (beforeAll/afterAll) for all tests within this memoization environment. Changes to forcedRoots that alter implementations of components in memoizationRoots OR their dependencies will cause the test to execute in a new memoization environment, check the initial log output in tests for information about the memoization environments in your tests.

    parallelEnvs

    ParallelLevel of distinct memoization environments run, default: ParallelLevel.Unlimited. Sequential envs will run in sequence after the parallel ones.

    parallelSuites

    ParallelLevel of test suites run, default: ParallelLevel.Unlimited. Sequential suites will run in sequence after the parallel ones.

    parallelTests

    ParallelLevel of test cases run, default: ParallelLevel.Unlimited. Sequential tests will run in sequence after the parallel ones. Other options, Tests with different other options will run in distinct memoization environments:

    configBaseName

    Search for config in HOCON resource files with names $configBaseName.conf, $configBaseName-reference.conf, $configBaseName-reference-dev.conf (see izumi.distage.framework.services.ConfigLoader

    configOverrides

    Overriding definitions on top of main loaded config, default None

    bootstrapFactory

    BootstrapFactory, controls config loading & initial modules

    planningOptions

    PlanningOptions, debug options for distage.Planner

    logLevel

    Log level for the logstage.IzLogger used in testkit and provided to the tests (will be overriden by plugin / module bindings if exist)

    debugOutput

    Print testkit debug messages, including those helping diagnose memoization environment issues, default: false, also controlled by DebugProperties.`izumi.distage.testkit.debug` system property

Value Members

  1. object DebugProperties extends fundamentals.platform.properties.DebugProperties

    Java properties that debug logging for distage-testkit and caching of distage-testkit classpath scans (when used)

    Java properties that debug logging for distage-testkit and caching of distage-testkit classpath scans (when used)

    See also

    DebugProperties

  2. object TestConfig extends Serializable

Ungrouped