Loading cc/test.go +19 −4 Original line number Diff line number Diff line Loading @@ -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) Loading Loading @@ -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()) Loading java/java.go +23 −5 Original line number Diff line number Diff line Loading @@ -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 { Loading Loading @@ -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) Loading Loading @@ -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) } Loading java/java_test.go +24 −0 Original line number Diff line number Diff line Loading @@ -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"]) } } java/robolectric.go +8 −3 Original line number Diff line number Diff line Loading @@ -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"). Loading python/test.go +8 −3 Original line number Diff line number Diff line Loading @@ -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" Loading Loading
cc/test.go +19 −4 Original line number Diff line number Diff line Loading @@ -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) Loading Loading @@ -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()) Loading
java/java.go +23 −5 Original line number Diff line number Diff line Loading @@ -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 { Loading Loading @@ -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) Loading Loading @@ -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) } Loading
java/java_test.go +24 −0 Original line number Diff line number Diff line Loading @@ -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"]) } }
java/robolectric.go +8 −3 Original line number Diff line number Diff line Loading @@ -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"). Loading
python/test.go +8 −3 Original line number Diff line number Diff line Loading @@ -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" Loading