diff options
| author | 2022-01-11 07:36:23 +0000 | |
|---|---|---|
| committer | 2022-01-11 07:36:23 +0000 | |
| commit | f7e9e1f434e2604761e485f2a9d1b34c10f402e2 (patch) | |
| tree | 90f63cd358bdb146ee624e5133cfe9e42374a328 /java/app_test.go | |
| parent | b252266b8a66e01d8b670c3178de960667969e11 (diff) | |
| parent | 16213c6bbed13a10afab71fe54c7d6134205bb31 (diff) | |
Merge changes I9ad66ea2,I4c95b77b am: 57271b9f45 am: a7c0107744 am: 16213c6bbe
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1934955
Change-Id: I111e14b3df8c222e8c00b16add7ba37d3324b3c7
Diffstat (limited to 'java/app_test.go')
| -rw-r--r-- | java/app_test.go | 92 |
1 files changed, 91 insertions, 1 deletions
diff --git a/java/app_test.go b/java/app_test.go index 4da7c3dba..d9667b980 100644 --- a/java/app_test.go +++ b/java/app_test.go @@ -1707,7 +1707,7 @@ func TestPackageNameOverride(t *testing.T) { }, }, { - name: "overridden", + name: "overridden via PRODUCT_PACKAGE_NAME_OVERRIDES", bp: ` android_app { name: "foo", @@ -1722,6 +1722,22 @@ func TestPackageNameOverride(t *testing.T) { "out/soong/target/product/test_device/system/app/bar/bar.apk", }, }, + { + name: "overridden via stem", + bp: ` + android_app { + name: "foo", + srcs: ["a.java"], + sdk_version: "current", + stem: "bar", + } + `, + packageNameOverride: "", + expected: []string{ + "out/soong/.intermediates/foo/android_common/bar.apk", + "out/soong/target/product/test_device/system/app/bar/bar.apk", + }, + }, } for _, test := range testCases { @@ -1965,6 +1981,80 @@ func TestOverrideAndroidApp(t *testing.T) { } } +func TestOverrideAndroidAppStem(t *testing.T) { + ctx, _ := testJava(t, ` + android_app { + name: "foo", + srcs: ["a.java"], + sdk_version: "current", + } + override_android_app { + name: "bar", + base: "foo", + } + override_android_app { + name: "baz", + base: "foo", + stem: "baz_stem", + } + android_app { + name: "foo2", + srcs: ["a.java"], + sdk_version: "current", + stem: "foo2_stem", + } + override_android_app { + name: "bar2", + base: "foo2", + } + override_android_app { + name: "baz2", + base: "foo2", + stem: "baz2_stem", + } + `) + for _, expected := range []struct { + moduleName string + variantName string + apkPath string + }{ + { + moduleName: "foo", + variantName: "android_common", + apkPath: "out/soong/target/product/test_device/system/app/foo/foo.apk", + }, + { + moduleName: "foo", + variantName: "android_common_bar", + apkPath: "out/soong/target/product/test_device/system/app/bar/bar.apk", + }, + { + moduleName: "foo", + variantName: "android_common_baz", + apkPath: "out/soong/target/product/test_device/system/app/baz_stem/baz_stem.apk", + }, + { + moduleName: "foo2", + variantName: "android_common", + apkPath: "out/soong/target/product/test_device/system/app/foo2_stem/foo2_stem.apk", + }, + { + moduleName: "foo2", + variantName: "android_common_bar2", + // Note that this may cause the duplicate output error. + apkPath: "out/soong/target/product/test_device/system/app/foo2_stem/foo2_stem.apk", + }, + { + moduleName: "foo2", + variantName: "android_common_baz2", + apkPath: "out/soong/target/product/test_device/system/app/baz2_stem/baz2_stem.apk", + }, + } { + variant := ctx.ModuleForTests(expected.moduleName, expected.variantName) + variant.Output(expected.apkPath) + } +} + func TestOverrideAndroidAppDependency(t *testing.T) { ctx, _ := testJava(t, ` android_app { |