Merge "Prebuilt is enabled even if the source one is not."

This commit is contained in:
Treehugger Robot 2020-12-09 07:29:24 +00:00 committed by Gerrit Code Review
commit 6bba8382af
2 changed files with 29 additions and 1 deletions

View File

@ -178,7 +178,7 @@ func InitSingleSourcePrebuiltModule(module PrebuiltInterface, srcProps interface
srcPropertyName := proptools.PropertyNameForField(srcField)
srcsSupplier := func(ctx BaseModuleContext) []string {
if !ctx.Module().Enabled() {
if !module.Enabled() {
return nil
}
value := srcPropsValue.FieldByIndex(srcFieldIndex)

View File

@ -2566,6 +2566,34 @@ func TestAndroidAppImport_ArchVariants(t *testing.T) {
}
}
func TestAndroidAppImport_overridesDisabledAndroidApp(t *testing.T) {
ctx, _ := testJava(t, `
android_app {
name: "foo",
srcs: ["a.java"],
enabled: false,
}
android_app_import {
name: "foo",
apk: "prebuilts/apk/app.apk",
certificate: "platform",
prefer: true,
}
`)
variant := ctx.ModuleForTests("prebuilt_foo", "android_common")
a := variant.Module().(*AndroidAppImport)
// The prebuilt module should still be enabled and active even if the source-based counterpart
// is disabled.
if !a.prebuilt.UsePrebuilt() {
t.Errorf("prebuilt foo module is not active")
}
if !a.Enabled() {
t.Errorf("prebuilt foo module is disabled")
}
}
func TestAndroidTestImport(t *testing.T) {
ctx, config := testJava(t, `
android_test_import {