From 9e83f0b5313b0500d4ab8ce2f727ff7cdea38505 Mon Sep 17 00:00:00 2001 From: Jiyong Park Date: Thu, 11 Jun 2020 00:35:03 +0900 Subject: Fix type assertion error regarding dex_import Ida6f7bb784efe74cc1fa0e8d370eaee803f08b0f made it possible to add dex_import modules into apex, but that change had a bug. When creating Android.mk for the dex_import module, the code executed an unchecked type assertion to convert java.DexImport to java.Dependency, which cannot be successful. This change fixes the bug by doing a checked type assertion instead. Bug: 157886942 Test: m (test added) Change-Id: Id22c20d42effce539fab10b0d349bf340d467f02 --- apex/apex_test.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'apex/apex_test.go') diff --git a/apex/apex_test.go b/apex/apex_test.go index d6a5d0909..7bd037481 100644 --- a/apex/apex_test.go +++ b/apex/apex_test.go @@ -329,7 +329,7 @@ func ensureListEmpty(t *testing.T, result []string) { // Minimal test func TestBasicApex(t *testing.T) { - ctx, _ := testApex(t, ` + ctx, config := testApex(t, ` apex_defaults { name: "myapex-defaults", manifest: ":myapex.manifest", @@ -484,6 +484,16 @@ func TestBasicApex(t *testing.T) { apexRule := ctx.ModuleForTests("myapex", "android_common_myapex_image").Rule("apexRule") + // Make sure that Android.mk is created + ab := ctx.ModuleForTests("myapex", "android_common_myapex_image").Module().(*apexBundle) + data := android.AndroidMkDataForTest(t, config, "", ab) + var builder strings.Builder + data.Custom(&builder, ab.BaseModuleName(), "TARGET_", "", data) + + androidMk := builder.String() + ensureContains(t, androidMk, "LOCAL_MODULE := mylib.myapex\n") + ensureNotContains(t, androidMk, "LOCAL_MODULE := mylib.com.android.myapex\n") + optFlags := apexRule.Args["opt_flags"] ensureContains(t, optFlags, "--pubkey vendor/foo/devkeys/testkey.avbpubkey") // Ensure that the NOTICE output is being packaged as an asset. -- cgit v1.2.3-59-g8ed1b