No matching variant android_app_import fix
This fixes a bug where android_app_import or android_test_import without a matching variant or a default apk property value breaks the build. Test: app_test.go Fixes: 152343232 Change-Id: I8215aa1a6dad74b503eaa1169a64f8c30dda287c
This commit is contained in:
@@ -2524,6 +2524,24 @@ func TestAndroidAppImport_ArchVariants(t *testing.T) {
|
||||
`,
|
||||
expected: "prebuilts/apk/app.apk",
|
||||
},
|
||||
{
|
||||
name: "no matching arch without default",
|
||||
bp: `
|
||||
android_app_import {
|
||||
name: "foo",
|
||||
arch: {
|
||||
arm: {
|
||||
apk: "prebuilts/apk/app_arm.apk",
|
||||
},
|
||||
},
|
||||
presigned: true,
|
||||
dex_preopt: {
|
||||
enabled: true,
|
||||
},
|
||||
}
|
||||
`,
|
||||
expected: "",
|
||||
},
|
||||
}
|
||||
|
||||
jniRuleRe := regexp.MustCompile("^if \\(zipinfo (\\S+)")
|
||||
@@ -2531,6 +2549,12 @@ func TestAndroidAppImport_ArchVariants(t *testing.T) {
|
||||
ctx, _ := testJava(t, test.bp)
|
||||
|
||||
variant := ctx.ModuleForTests("foo", "android_common")
|
||||
if test.expected == "" {
|
||||
if variant.Module().Enabled() {
|
||||
t.Error("module should have been disabled, but wasn't")
|
||||
}
|
||||
continue
|
||||
}
|
||||
jniRuleCommand := variant.Output("jnis-uncompressed/foo.apk").RuleParams.Command
|
||||
matches := jniRuleRe.FindStringSubmatch(jniRuleCommand)
|
||||
if len(matches) != 2 {
|
||||
|
Reference in New Issue
Block a user