ModuleSplitter

public class ModuleSplitter
extends Object

java.lang.Object
   ↳ com.android.tradefed.testtype.suite.ModuleSplitter


Helper to split a list of modules represented by IConfiguration into a list of execution units represented by ModuleDefinition.

Each configuration may generate 1 or more ModuleDefinition depending on its options and test types:

Summary

Public constructors

ModuleSplitter()

Public methods

static splitConfiguration(TestInformation testInfo, runConfig, suitePreparersPerDevice, int shardCount, boolean dynamicModule, boolean intraModuleSharding)

Create a List of executable unit ModuleDefinitions based on the map of configuration that was loaded.

Public constructors

ModuleSplitter

public ModuleSplitter ()

Public methods

splitConfiguration

public static  splitConfiguration (TestInformation testInfo, 
                 runConfig, 
                 suitePreparersPerDevice, 
                int shardCount, 
                boolean dynamicModule, 
                boolean intraModuleSharding)

Create a List of executable unit ModuleDefinitions based on the map of configuration that was loaded.

Parameters
testInfo TestInformation: the current TestInformation to proceed with sharding.

runConfig : ERROR(/LinkedHashMap) loaded from ITestSuite#loadTests().

suitePreparersPerDevice : map of suite level preparers per test device.

shardCount int: a shard count hint to help with sharding.

dynamicModule boolean: Whether or not module can be shared in pool or must be independent (strict sharding).

intraModuleSharding boolean: Whether or not to shard within the modules.

Returns
List of ModuleDefinition