Merge "Allow adding extra tradefed options in the Android.bp file"
This commit is contained in:
23
cc/test.go
23
cc/test.go
@@ -415,8 +415,16 @@ func (test *testBinary) install(ctx ModuleContext, file android.Path) {
|
||||
testInstallBase := getTestInstallBase(useVendor)
|
||||
configs := getTradefedConfigOptions(ctx, &test.Properties, test.isolated(ctx))
|
||||
|
||||
test.testConfig = tradefed.AutoGenNativeTestConfig(ctx, test.Properties.Test_config,
|
||||
test.Properties.Test_config_template, test.testDecorator.InstallerProperties.Test_suites, configs, test.Properties.Auto_gen_config, testInstallBase)
|
||||
test.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: test.Properties.Test_config,
|
||||
TestConfigTemplateProp: test.Properties.Test_config_template,
|
||||
TestSuites: test.testDecorator.InstallerProperties.Test_suites,
|
||||
Config: configs,
|
||||
AutoGenConfig: test.Properties.Auto_gen_config,
|
||||
TestInstallBase: testInstallBase,
|
||||
DeviceTemplate: "${NativeTestConfigTemplate}",
|
||||
HostTemplate: "${NativeHostTestConfigTemplate}",
|
||||
})
|
||||
|
||||
test.extraTestConfigs = android.PathsForModuleSrc(ctx, test.Properties.Test_options.Extra_test_configs)
|
||||
|
||||
@@ -630,8 +638,15 @@ func (benchmark *benchmarkDecorator) install(ctx ModuleContext, file android.Pat
|
||||
if Bool(benchmark.Properties.Require_root) {
|
||||
configs = append(configs, tradefed.Object{"target_preparer", "com.android.tradefed.targetprep.RootTargetPreparer", nil})
|
||||
}
|
||||
benchmark.testConfig = tradefed.AutoGenNativeBenchmarkTestConfig(ctx, benchmark.Properties.Test_config,
|
||||
benchmark.Properties.Test_config_template, benchmark.Properties.Test_suites, configs, benchmark.Properties.Auto_gen_config)
|
||||
benchmark.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: benchmark.Properties.Test_config,
|
||||
TestConfigTemplateProp: benchmark.Properties.Test_config_template,
|
||||
TestSuites: benchmark.Properties.Test_suites,
|
||||
Config: configs,
|
||||
AutoGenConfig: benchmark.Properties.Auto_gen_config,
|
||||
DeviceTemplate: "${NativeBenchmarkTestConfigTemplate}",
|
||||
HostTemplate: "${NativeBenchmarkTestConfigTemplate}",
|
||||
})
|
||||
|
||||
benchmark.binaryDecorator.baseInstaller.dir = filepath.Join("benchmarktest", ctx.ModuleName())
|
||||
benchmark.binaryDecorator.baseInstaller.dir64 = filepath.Join("benchmarktest64", ctx.ModuleName())
|
||||
|
28
java/java.go
28
java/java.go
@@ -915,6 +915,10 @@ 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"`
|
||||
|
||||
// Extra <option> tags to add to the auto generated test xml file. The "key"
|
||||
// is optional in each of these.
|
||||
Tradefed_options []tradefed.Option
|
||||
}
|
||||
|
||||
type testProperties struct {
|
||||
@@ -1192,9 +1196,18 @@ func (j *Test) generateAndroidBuildActionsWithConfig(ctx android.ModuleContext,
|
||||
defaultUnitTest := !inList("tradefed", j.properties.Libs) && !inList("cts", j.testProperties.Test_suites)
|
||||
j.testProperties.Test_options.Unit_test = proptools.BoolPtr(defaultUnitTest)
|
||||
}
|
||||
|
||||
j.testConfig = tradefed.AutoGenJavaTestConfig(ctx, j.testProperties.Test_config, j.testProperties.Test_config_template,
|
||||
j.testProperties.Test_suites, configs, j.testProperties.Auto_gen_config, j.testProperties.Test_options.Unit_test)
|
||||
j.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: j.testProperties.Test_config,
|
||||
TestConfigTemplateProp: j.testProperties.Test_config_template,
|
||||
TestSuites: j.testProperties.Test_suites,
|
||||
Config: configs,
|
||||
OptionsForAutogenerated: j.testProperties.Test_options.Tradefed_options,
|
||||
AutoGenConfig: j.testProperties.Auto_gen_config,
|
||||
UnitTest: j.testProperties.Test_options.Unit_test,
|
||||
DeviceTemplate: "${JavaTestConfigTemplate}",
|
||||
HostTemplate: "${JavaHostTestConfigTemplate}",
|
||||
HostUnitTestTemplate: "${JavaHostUnitTestConfigTemplate}",
|
||||
})
|
||||
|
||||
j.data = android.PathsForModuleSrc(ctx, j.testProperties.Data)
|
||||
|
||||
@@ -1239,8 +1252,13 @@ func (j *TestHelperLibrary) GenerateAndroidBuildActions(ctx android.ModuleContex
|
||||
}
|
||||
|
||||
func (j *JavaTestImport) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.testConfig = tradefed.AutoGenJavaTestConfig(ctx, j.prebuiltTestProperties.Test_config, nil,
|
||||
j.prebuiltTestProperties.Test_suites, nil, nil, nil)
|
||||
j.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: j.prebuiltTestProperties.Test_config,
|
||||
TestSuites: j.prebuiltTestProperties.Test_suites,
|
||||
DeviceTemplate: "${JavaTestConfigTemplate}",
|
||||
HostTemplate: "${JavaHostTestConfigTemplate}",
|
||||
HostUnitTestTemplate: "${JavaHostUnitTestConfigTemplate}",
|
||||
})
|
||||
|
||||
j.Import.GenerateAndroidBuildActions(ctx)
|
||||
}
|
||||
|
@@ -1945,3 +1945,27 @@ func TestJavaApiLibraryJarGeneration(t *testing.T) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestTradefedOptions(t *testing.T) {
|
||||
result := PrepareForTestWithJavaBuildComponents.RunTestWithBp(t, `
|
||||
java_test_host {
|
||||
name: "foo",
|
||||
test_options: {
|
||||
tradefed_options: [
|
||||
{
|
||||
name: "exclude-path",
|
||||
value: "org/apache"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
`)
|
||||
|
||||
buildOS := result.Config.BuildOS.String()
|
||||
args := result.ModuleForTests("foo", buildOS+"_common").
|
||||
Output("out/soong/.intermediates/foo/" + buildOS + "_common/foo.config").Args
|
||||
expected := proptools.NinjaAndShellEscape("<option name=\"exclude-path\" value=\"org/apache\" />")
|
||||
if args["extraConfigs"] != expected {
|
||||
t.Errorf("Expected args[\"extraConfigs\"] to equal %q, was %q", expected, args["extraConfigs"])
|
||||
}
|
||||
}
|
||||
|
@@ -131,9 +131,14 @@ func (r *robolectricTest) GenerateAndroidBuildActions(ctx android.ModuleContext)
|
||||
r.forceOSType = ctx.Config().BuildOS
|
||||
r.forceArchType = ctx.Config().BuildArch
|
||||
|
||||
r.testConfig = tradefed.AutoGenRobolectricTestConfig(ctx, r.testProperties.Test_config,
|
||||
r.testProperties.Test_config_template, r.testProperties.Test_suites,
|
||||
r.testProperties.Auto_gen_config)
|
||||
r.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: r.testProperties.Test_config,
|
||||
TestConfigTemplateProp: r.testProperties.Test_config_template,
|
||||
TestSuites: r.testProperties.Test_suites,
|
||||
AutoGenConfig: r.testProperties.Auto_gen_config,
|
||||
DeviceTemplate: "${RobolectricTestConfigTemplate}",
|
||||
HostTemplate: "${RobolectricTestConfigTemplate}",
|
||||
})
|
||||
r.data = android.PathsForModuleSrc(ctx, r.testProperties.Data)
|
||||
|
||||
roboTestConfig := android.PathForModuleGen(ctx, "robolectric").
|
||||
|
@@ -67,9 +67,14 @@ func (test *testDecorator) bootstrapperProps() []interface{} {
|
||||
}
|
||||
|
||||
func (test *testDecorator) install(ctx android.ModuleContext, file android.Path) {
|
||||
test.testConfig = tradefed.AutoGenPythonBinaryHostTestConfig(ctx, test.testProperties.Test_config,
|
||||
test.testProperties.Test_config_template, test.binaryDecorator.binaryProperties.Test_suites,
|
||||
test.binaryDecorator.binaryProperties.Auto_gen_config)
|
||||
test.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: test.testProperties.Test_config,
|
||||
TestConfigTemplateProp: test.testProperties.Test_config_template,
|
||||
TestSuites: test.binaryDecorator.binaryProperties.Test_suites,
|
||||
AutoGenConfig: test.binaryDecorator.binaryProperties.Auto_gen_config,
|
||||
DeviceTemplate: "${PythonBinaryHostTestConfigTemplate}",
|
||||
HostTemplate: "${PythonBinaryHostTestConfigTemplate}",
|
||||
})
|
||||
|
||||
test.binaryDecorator.pythonInstaller.dir = "nativetest"
|
||||
test.binaryDecorator.pythonInstaller.dir64 = "nativetest64"
|
||||
|
@@ -112,12 +112,14 @@ func (benchmark *benchmarkDecorator) compilerProps() []interface{} {
|
||||
}
|
||||
|
||||
func (benchmark *benchmarkDecorator) install(ctx ModuleContext) {
|
||||
benchmark.testConfig = tradefed.AutoGenRustBenchmarkConfig(ctx,
|
||||
benchmark.Properties.Test_config,
|
||||
benchmark.Properties.Test_config_template,
|
||||
benchmark.Properties.Test_suites,
|
||||
nil,
|
||||
benchmark.Properties.Auto_gen_config)
|
||||
benchmark.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: benchmark.Properties.Test_config,
|
||||
TestConfigTemplateProp: benchmark.Properties.Test_config_template,
|
||||
TestSuites: benchmark.Properties.Test_suites,
|
||||
AutoGenConfig: benchmark.Properties.Auto_gen_config,
|
||||
DeviceTemplate: "${RustDeviceBenchmarkConfigTemplate}",
|
||||
HostTemplate: "${RustHostBenchmarkConfigTemplate}",
|
||||
})
|
||||
|
||||
// default relative install path is module name
|
||||
if !Bool(benchmark.Properties.No_named_install_directory) {
|
||||
|
17
rust/test.go
17
rust/test.go
@@ -130,13 +130,16 @@ func (test *testDecorator) install(ctx ModuleContext) {
|
||||
configs = append(configs, tradefed.Object{"target_preparer", "com.android.tradefed.targetprep.RootTargetPreparer", options})
|
||||
}
|
||||
|
||||
test.testConfig = tradefed.AutoGenRustTestConfig(ctx,
|
||||
test.Properties.Test_config,
|
||||
test.Properties.Test_config_template,
|
||||
test.Properties.Test_suites,
|
||||
configs,
|
||||
test.Properties.Auto_gen_config,
|
||||
testInstallBase)
|
||||
test.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: test.Properties.Test_config,
|
||||
TestConfigTemplateProp: test.Properties.Test_config_template,
|
||||
TestSuites: test.Properties.Test_suites,
|
||||
Config: configs,
|
||||
AutoGenConfig: test.Properties.Auto_gen_config,
|
||||
TestInstallBase: testInstallBase,
|
||||
DeviceTemplate: "${RustDeviceTestConfigTemplate}",
|
||||
HostTemplate: "${RustHostTestConfigTemplate}",
|
||||
})
|
||||
|
||||
dataSrcPaths := android.PathsForModuleSrc(ctx, test.Properties.Data)
|
||||
|
||||
|
@@ -379,8 +379,16 @@ func (s *ShTest) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
}
|
||||
configs = append(configs, tradefed.Object{"target_preparer", "com.android.tradefed.targetprep.PushFilePreparer", options})
|
||||
}
|
||||
s.testConfig = tradefed.AutoGenShellTestConfig(ctx, s.testProperties.Test_config,
|
||||
s.testProperties.Test_config_template, s.testProperties.Test_suites, configs, s.testProperties.Auto_gen_config, s.outputFilePath.Base())
|
||||
s.testConfig = tradefed.AutoGenTestConfig(ctx, tradefed.AutoGenTestConfigOptions{
|
||||
TestConfigProp: s.testProperties.Test_config,
|
||||
TestConfigTemplateProp: s.testProperties.Test_config_template,
|
||||
TestSuites: s.testProperties.Test_suites,
|
||||
Config: configs,
|
||||
AutoGenConfig: s.testProperties.Auto_gen_config,
|
||||
OutputFileName: s.outputFilePath.Base(),
|
||||
DeviceTemplate: "${ShellTestConfigTemplate}",
|
||||
HostTemplate: "${ShellTestConfigTemplate}",
|
||||
})
|
||||
|
||||
s.dataModules = make(map[string]android.Path)
|
||||
ctx.VisitDirectDeps(func(dep android.Module) {
|
||||
|
@@ -107,15 +107,10 @@ func (ob Object) Config() string {
|
||||
|
||||
}
|
||||
|
||||
func autogenTemplate(ctx android.ModuleContext, output android.WritablePath, template string, configs []Config, testInstallBase string) {
|
||||
autogenTemplateWithNameAndOutputFile(ctx, ctx.ModuleName(), output, template, configs, "", testInstallBase)
|
||||
}
|
||||
|
||||
func autogenTemplateWithName(ctx android.ModuleContext, name string, output android.WritablePath, template string, configs []Config, testInstallBase string) {
|
||||
autogenTemplateWithNameAndOutputFile(ctx, name, output, template, configs, "", testInstallBase)
|
||||
}
|
||||
|
||||
func autogenTemplateWithNameAndOutputFile(ctx android.ModuleContext, name string, output android.WritablePath, template string, configs []Config, outputFileName string, testInstallBase string) {
|
||||
func autogenTemplate(ctx android.ModuleContext, name string, output android.WritablePath, template string, configs []Config, outputFileName string, testInstallBase string) {
|
||||
if template == "" {
|
||||
ctx.ModuleErrorf("Empty template")
|
||||
}
|
||||
var configStrings []string
|
||||
for _, config := range configs {
|
||||
configStrings = append(configStrings, config.Config())
|
||||
@@ -137,144 +132,49 @@ func autogenTemplateWithNameAndOutputFile(ctx android.ModuleContext, name string
|
||||
})
|
||||
}
|
||||
|
||||
func AutoGenNativeTestConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, config []Config, autoGenConfig *bool, testInstallBase string) android.Path {
|
||||
// AutoGenTestConfigOptions is used so that we can supply many optional
|
||||
// arguments to the AutoGenTestConfig function.
|
||||
type AutoGenTestConfigOptions struct {
|
||||
Name string
|
||||
OutputFileName string
|
||||
TestConfigProp *string
|
||||
TestConfigTemplateProp *string
|
||||
TestSuites []string
|
||||
Config []Config
|
||||
OptionsForAutogenerated []Option
|
||||
AutoGenConfig *bool
|
||||
UnitTest *bool
|
||||
TestInstallBase string
|
||||
DeviceTemplate string
|
||||
HostTemplate string
|
||||
HostUnitTestTemplate string
|
||||
}
|
||||
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
func AutoGenTestConfig(ctx android.ModuleContext, options AutoGenTestConfigOptions) android.Path {
|
||||
configs := append([]Config{}, options.Config...)
|
||||
for _, c := range options.OptionsForAutogenerated {
|
||||
configs = append(configs, c)
|
||||
}
|
||||
path, autogenPath := testConfigPath(ctx, options.TestConfigProp, options.TestSuites, options.AutoGenConfig, options.TestConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
templatePath := getTestConfigTemplate(ctx, options.TestConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), config, testInstallBase)
|
||||
autogenTemplate(ctx, options.Name, autogenPath, templatePath.String(), configs, options.OutputFileName, options.TestInstallBase)
|
||||
} else {
|
||||
if ctx.Device() {
|
||||
autogenTemplate(ctx, autogenPath, "${NativeTestConfigTemplate}", config, testInstallBase)
|
||||
autogenTemplate(ctx, options.Name, autogenPath, options.DeviceTemplate, configs, options.OutputFileName, options.TestInstallBase)
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${NativeHostTestConfigTemplate}", config, testInstallBase)
|
||||
}
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenShellTestConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, config []Config, autoGenConfig *bool, outputFileName string) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplateWithNameAndOutputFile(ctx, ctx.ModuleName(), autogenPath, templatePath.String(), config, outputFileName, "")
|
||||
} else {
|
||||
autogenTemplateWithNameAndOutputFile(ctx, ctx.ModuleName(), autogenPath, "${ShellTestConfigTemplate}", config, outputFileName, "")
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenNativeBenchmarkTestConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, configs []Config, autoGenConfig *bool) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), configs, "")
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${NativeBenchmarkTestConfigTemplate}", configs, "")
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenJavaTestConfig(ctx android.ModuleContext, testConfigProp *string, testConfigTemplateProp *string,
|
||||
testSuites []string, config []Config, autoGenConfig *bool, unitTest *bool) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), config, "")
|
||||
} else {
|
||||
if ctx.Device() {
|
||||
autogenTemplate(ctx, autogenPath, "${JavaTestConfigTemplate}", config, "")
|
||||
} else {
|
||||
if Bool(unitTest) {
|
||||
autogenTemplate(ctx, autogenPath, "${JavaHostUnitTestConfigTemplate}", config, "")
|
||||
if Bool(options.UnitTest) {
|
||||
autogenTemplate(ctx, options.Name, autogenPath, options.HostUnitTestTemplate, configs, options.OutputFileName, options.TestInstallBase)
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${JavaHostTestConfigTemplate}", config, "")
|
||||
autogenTemplate(ctx, options.Name, autogenPath, options.HostTemplate, configs, options.OutputFileName, options.TestInstallBase)
|
||||
}
|
||||
}
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenPythonBinaryHostTestConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, autoGenConfig *bool) android.Path {
|
||||
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), nil, "")
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${PythonBinaryHostTestConfigTemplate}", nil, "")
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenRustTestConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, config []Config, autoGenConfig *bool, testInstallBase string) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), config, testInstallBase)
|
||||
} else {
|
||||
if ctx.Device() {
|
||||
autogenTemplate(ctx, autogenPath, "${RustDeviceTestConfigTemplate}", config, testInstallBase)
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${RustHostTestConfigTemplate}", config, testInstallBase)
|
||||
}
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenRustBenchmarkConfig(ctx android.ModuleContext, testConfigProp *string,
|
||||
testConfigTemplateProp *string, testSuites []string, config []Config, autoGenConfig *bool) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), config, "")
|
||||
} else {
|
||||
if ctx.Device() {
|
||||
autogenTemplate(ctx, autogenPath, "${RustDeviceBenchmarkConfigTemplate}", config, "")
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${RustHostBenchmarkConfigTemplate}", config, "")
|
||||
}
|
||||
}
|
||||
return autogenPath
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
||||
func AutoGenRobolectricTestConfig(ctx android.ModuleContext, testConfigProp *string, testConfigTemplateProp *string,
|
||||
testSuites []string, autoGenConfig *bool) android.Path {
|
||||
path, autogenPath := testConfigPath(ctx, testConfigProp, testSuites, autoGenConfig, testConfigTemplateProp)
|
||||
if autogenPath != nil {
|
||||
templatePath := getTestConfigTemplate(ctx, testConfigTemplateProp)
|
||||
if templatePath.Valid() {
|
||||
autogenTemplate(ctx, autogenPath, templatePath.String(), nil, "")
|
||||
} else {
|
||||
autogenTemplate(ctx, autogenPath, "${RobolectricTestConfigTemplate}", nil, "")
|
||||
}
|
||||
return autogenPath
|
||||
if len(options.OptionsForAutogenerated) > 0 {
|
||||
ctx.ModuleErrorf("Extra tradefed configurations were provided for an autogenerated xml file, but the autogenerated xml file was not used.")
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
Reference in New Issue
Block a user