Change test_module_config from copying files to symlink files.
Now the derived modules will have symlink's to base's testcase dir rather than copyfile files from base's intermediates dir. I also removed storing the "base" module as dependency and only use data from the provider in GenerateAndroidBuildActions and AndroidMkEntries. I did have to add two fields to the provider for this. To ensure the symlinks always resolve to a physical file, I also added goals such that building `derived-target` will also build `build-target` Create new Make variable: LOCAL_SOONG_INSTALLED_COMPATIBILITY_SUPPORT_FILES for tasks/general-tests.mk,device-tests.mk to read. This allows "support" files that are installed with soong rules rather than make rules to still end up in the zips. Sample dir structure: % tree -ls testcases aosp_cf_x86_64_phone[4:31:54]/0 [ 4096] testcases ├── [ 4096] FrameworksServicesTests │ ├── [ 4096] data │ │ └── [ 851] broken_shortcut.xml │ ├── [ 2800] FrameworksServicesTests.config │ ├── [ 12695] JobTestApp.apk │ ├── [ 8599] MediaButtonReceiverHolderTestHelperApp.apk │ ├── [ 16791] SimpleServiceTestApp1.apk │ ├── [ 16791] SimpleServiceTestApp2.apk │ ├── [ 16791] SimpleServiceTestApp3.apk │ ├── [ 1017763] SuspendTestApp.apk │ └── [ 4096] x86_64 │ └── [ 79827767] FrameworksServicesTests.apk └── [ 4096] FrameworksServicesTests_contentprotection ├── [ 4096] data │ └── [ 54] broken_shortcut.xml -> ../../FrameworksServicesTests/data/broken_shortcut.xml ├── [ 3005] FrameworksServicesTests_contentprotection.config ├── [ 41] JobTestApp.apk -> ../FrameworksServicesTests/JobTestApp.apk ├── [ 69] MediaButtonReceiverHolderTestHelperApp.apk -> ../FrameworksServicesTests/MediaButtonReceiverHolderTestHelperApp.apk ├── [ 52] SimpleServiceTestApp1.apk -> ../FrameworksServicesTests/SimpleServiceTestApp1.apk ├── [ 52] SimpleServiceTestApp2.apk -> ../FrameworksServicesTests/SimpleServiceTestApp2.apk ├── [ 52] SimpleServiceTestApp3.apk -> ../FrameworksServicesTests/SimpleServiceTestApp3.apk ├── [ 45] SuspendTestApp.apk -> ../FrameworksServicesTests/SuspendTestApp.apk ├── [ 36] test_module_config.manifest └── [ 4096] x86_64 ├── [ 64] FrameworksServicesTests.apk -> ../../FrameworksServicesTests/x86_64/FrameworksServicesTests.apk └── [ 36] UNUSED-FrameworksServicesTests.apk Test: m clean && atest FrameworksServicesTests_contentprotection Test: m clean && atest CtsDevicePolicyManagerTestCases_ParentProfileApiDisabled Bug: b/332320956 Change-Id: I8466f253fa559bc74cef4533edf263650e96bbfb
This commit is contained in:
@@ -1380,6 +1380,8 @@ func (a *AndroidTest) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
HostRequiredModuleNames: a.HostRequiredModuleNames(),
|
||||
TestSuites: a.testProperties.Test_suites,
|
||||
IsHost: false,
|
||||
LocalCertificate: a.certificate.AndroidMkString(),
|
||||
IsUnitTest: Bool(a.testProperties.Test_options.Unit_test),
|
||||
})
|
||||
android.SetProvider(ctx, android.TestOnlyProviderKey, android.TestModuleInformation{
|
||||
TestOnly: true,
|
||||
|
Reference in New Issue
Block a user