Add java_test_helper_library
Extracts testSuiteComponent() function to reduce duplication. Bug: 128969758 Test: atest CtsJdwpTestCases Change-Id: I23746b18112d22f8670666f429a665b34b1955fd
This commit is contained in:
32
java/java.go
32
java/java.go
@@ -41,6 +41,7 @@ func init() {
|
||||
android.RegisterModuleType("java_binary", BinaryFactory)
|
||||
android.RegisterModuleType("java_binary_host", BinaryHostFactory)
|
||||
android.RegisterModuleType("java_test", TestFactory)
|
||||
android.RegisterModuleType("java_test_helper_library", TestHelperLibraryFactory)
|
||||
android.RegisterModuleType("java_test_host", TestHostFactory)
|
||||
android.RegisterModuleType("java_import", ImportFactory)
|
||||
android.RegisterModuleType("java_import_host", ImportFactoryHost)
|
||||
@@ -1536,6 +1537,12 @@ type testProperties struct {
|
||||
Data []string `android:"path"`
|
||||
}
|
||||
|
||||
type testHelperLibraryProperties struct {
|
||||
// list of compatibility suites (for example "cts", "vts") that the module should be
|
||||
// installed into.
|
||||
Test_suites []string `android:"arch_variant"`
|
||||
}
|
||||
|
||||
type Test struct {
|
||||
Library
|
||||
|
||||
@@ -1545,6 +1552,12 @@ type Test struct {
|
||||
data android.Paths
|
||||
}
|
||||
|
||||
type TestHelperLibrary struct {
|
||||
Library
|
||||
|
||||
testHelperLibraryProperties testHelperLibraryProperties
|
||||
}
|
||||
|
||||
func (j *Test) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.testConfig = tradefed.AutoGenJavaTestConfig(ctx, j.testProperties.Test_config, j.testProperties.Test_config_template, j.testProperties.Test_suites)
|
||||
j.data = android.PathsForModuleSrc(ctx, j.testProperties.Data)
|
||||
@@ -1552,6 +1565,10 @@ func (j *Test) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.Library.GenerateAndroidBuildActions(ctx)
|
||||
}
|
||||
|
||||
func (j *TestHelperLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
j.Library.GenerateAndroidBuildActions(ctx)
|
||||
}
|
||||
|
||||
// java_test builds a and links sources into a `.jar` file for the device, and possibly for the host as well, and
|
||||
// creates an `AndroidTest.xml` file to allow running the test with `atest` or a `TEST_MAPPING` file.
|
||||
//
|
||||
@@ -1577,6 +1594,21 @@ func TestFactory() android.Module {
|
||||
return module
|
||||
}
|
||||
|
||||
// java_test_helper_library creates a java library and makes sure that it is added to the appropriate test suite.
|
||||
func TestHelperLibraryFactory() android.Module {
|
||||
module := &TestHelperLibrary{}
|
||||
|
||||
module.AddProperties(
|
||||
&module.Module.properties,
|
||||
&module.Module.deviceProperties,
|
||||
&module.Module.dexpreoptProperties,
|
||||
&module.Module.protoProperties,
|
||||
&module.testHelperLibraryProperties)
|
||||
|
||||
InitJavaModule(module, android.HostAndDeviceSupported)
|
||||
return module
|
||||
}
|
||||
|
||||
// java_test_host builds a and links sources into a `.jar` file for the host, and creates an `AndroidTest.xml` file to
|
||||
// allow running the test with `atest` or a `TEST_MAPPING` file.
|
||||
//
|
||||
|
Reference in New Issue
Block a user