Add extra_test_configs option
Bug: 163344047 Test: m -j HelloWorldHostTest hello_world_test HelloWorldTests Change-Id: I237e3aa3f40df1f6387ba8ff6a16e56535cdeae9
This commit is contained in:
@@ -162,6 +162,7 @@ func (j *Test) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
if j.testConfig != nil {
|
||||
entries.SetPath("LOCAL_FULL_TEST_CONFIG", j.testConfig)
|
||||
}
|
||||
androidMkWriteExtraTestConfigs(j.extraTestConfigs, entries)
|
||||
androidMkWriteTestData(j.data, entries)
|
||||
if !BoolDefault(j.testProperties.Auto_gen_config, true) {
|
||||
entries.SetString("LOCAL_DISABLE_AUTO_GENERATE_TEST_CONFIG", "true")
|
||||
@@ -171,6 +172,12 @@ func (j *Test) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
return entriesList
|
||||
}
|
||||
|
||||
func androidMkWriteExtraTestConfigs(extraTestConfigs android.Paths, entries *android.AndroidMkEntries) {
|
||||
if len(extraTestConfigs) > 0 {
|
||||
entries.AddStrings("LOCAL_EXTRA_FULL_TEST_CONFIGS", extraTestConfigs.Strings()...)
|
||||
}
|
||||
}
|
||||
|
||||
func (j *TestHelperLibrary) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
entriesList := j.Library.AndroidMkEntries()
|
||||
entries := &entriesList[0]
|
||||
@@ -433,6 +440,7 @@ func (a *AndroidTest) AndroidMkEntries() []android.AndroidMkEntries {
|
||||
if a.testConfig != nil {
|
||||
entries.SetPath("LOCAL_FULL_TEST_CONFIG", a.testConfig)
|
||||
}
|
||||
androidMkWriteExtraTestConfigs(a.extraTestConfigs, entries)
|
||||
androidMkWriteTestData(a.data, entries)
|
||||
})
|
||||
|
||||
|
@@ -1031,8 +1031,9 @@ type AndroidTest struct {
|
||||
|
||||
testProperties testProperties
|
||||
|
||||
testConfig android.Path
|
||||
data android.Paths
|
||||
testConfig android.Path
|
||||
extraTestConfigs android.Paths
|
||||
data android.Paths
|
||||
}
|
||||
|
||||
func (a *AndroidTest) InstallInTestcases() bool {
|
||||
@@ -1060,6 +1061,7 @@ func (a *AndroidTest) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
testConfig := tradefed.AutoGenInstrumentationTestConfig(ctx, a.testProperties.Test_config,
|
||||
a.testProperties.Test_config_template, a.manifestPath, a.testProperties.Test_suites, a.testProperties.Auto_gen_config, configs)
|
||||
a.testConfig = a.FixTestConfig(ctx, testConfig)
|
||||
a.extraTestConfigs = android.PathsForModuleSrc(ctx, a.testProperties.Test_options.Extra_test_configs)
|
||||
a.data = android.PathsForModuleSrc(ctx, a.testProperties.Data)
|
||||
}
|
||||
|
||||
|
16
java/java.go
16
java/java.go
@@ -2139,6 +2139,12 @@ func LibraryHostFactory() android.Module {
|
||||
// Java Tests
|
||||
//
|
||||
|
||||
// Test option struct.
|
||||
type TestOptions struct {
|
||||
// a list of extra test configuration files that should be installed with the module.
|
||||
Extra_test_configs []string `android:"path,arch_variant"`
|
||||
}
|
||||
|
||||
type testProperties struct {
|
||||
// list of compatibility suites (for example "cts", "vts") that the module should be
|
||||
// installed into.
|
||||
@@ -2164,6 +2170,9 @@ type testProperties struct {
|
||||
// Add parameterized mainline modules to auto generated test config. The options will be
|
||||
// handled by TradeFed to do downloading and installing the specified modules on the device.
|
||||
Test_mainline_modules []string
|
||||
|
||||
// Test options.
|
||||
Test_options TestOptions
|
||||
}
|
||||
|
||||
type hostTestProperties struct {
|
||||
@@ -2192,8 +2201,9 @@ type Test struct {
|
||||
|
||||
testProperties testProperties
|
||||
|
||||
testConfig android.Path
|
||||
data android.Paths
|
||||
testConfig android.Path
|
||||
extraTestConfigs android.Paths
|
||||
data android.Paths
|
||||
}
|
||||
|
||||
type TestHost struct {
|
||||
@@ -2232,6 +2242,8 @@ func (j *Test) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
|
||||
j.data = android.PathsForModuleSrc(ctx, j.testProperties.Data)
|
||||
|
||||
j.extraTestConfigs = android.PathsForModuleSrc(ctx, j.testProperties.Test_options.Extra_test_configs)
|
||||
|
||||
ctx.VisitDirectDepsWithTag(dataNativeBinsTag, func(dep android.Module) {
|
||||
j.data = append(j.data, android.OutputFileForModule(ctx, dep, ""))
|
||||
})
|
||||
|
Reference in New Issue
Block a user