Merge cherrypicks of ['android-review.googlesource.com/3160716'] into 24Q3-release.
Change-Id: I3d1fe188748cfdb8fae067e6eb9ec5cd64cb88f5
This commit is contained in:
commit
f3a42c8e08
2 changed files with 89 additions and 1 deletions
|
@ -539,7 +539,11 @@ func (a *AndroidApp) aaptBuildActions(ctx android.ModuleContext) {
|
|||
a.aapt.splitNames = a.appProperties.Package_splits
|
||||
a.aapt.LoggingParent = String(a.overridableAppProperties.Logging_parent)
|
||||
if a.Updatable() {
|
||||
a.aapt.defaultManifestVersion = android.DefaultUpdatableModuleVersion
|
||||
if override := ctx.Config().Getenv("OVERRIDE_APEX_MANIFEST_DEFAULT_VERSION"); override != "" {
|
||||
a.aapt.defaultManifestVersion = override
|
||||
} else {
|
||||
a.aapt.defaultManifestVersion = android.DefaultUpdatableModuleVersion
|
||||
}
|
||||
}
|
||||
|
||||
// Use non final ids if we are doing optimized shrinking and are using R8.
|
||||
|
|
|
@ -519,6 +519,49 @@ func TestUpdatableApps_ErrorIfDepMinSdkVersionIsHigher(t *testing.T) {
|
|||
testJavaError(t, `"libjni" .*: links "libbar" built against newer API version "current"`, bp)
|
||||
}
|
||||
|
||||
func TestUpdatableApps_ApplyDefaultUpdatableModuleVersion(t *testing.T) {
|
||||
result := android.GroupFixturePreparers(
|
||||
PrepareForTestWithJavaDefaultModules,
|
||||
).RunTestWithBp(t, `
|
||||
android_app {
|
||||
name: "com.android.foo",
|
||||
srcs: ["a.java"],
|
||||
sdk_version: "current",
|
||||
min_sdk_version: "31",
|
||||
updatable: true,
|
||||
}
|
||||
`)
|
||||
foo := result.ModuleForTests("com.android.foo", "android_common").Rule("manifestFixer")
|
||||
android.AssertStringDoesContain(t,
|
||||
"com.android.foo: expected manifest fixer to set override-placeholder-version to android.DefaultUpdatableModuleVersion",
|
||||
foo.BuildParams.Args["args"],
|
||||
fmt.Sprintf("--override-placeholder-version %s", android.DefaultUpdatableModuleVersion),
|
||||
)
|
||||
}
|
||||
|
||||
func TestUpdatableApps_ApplyOverrideApexManifestDefaultVersion(t *testing.T) {
|
||||
result := android.GroupFixturePreparers(
|
||||
PrepareForTestWithJavaDefaultModules,
|
||||
android.FixtureMergeEnv(map[string]string{
|
||||
"OVERRIDE_APEX_MANIFEST_DEFAULT_VERSION": "1234",
|
||||
}),
|
||||
).RunTestWithBp(t, `
|
||||
android_app {
|
||||
name: "com.android.foo",
|
||||
srcs: ["a.java"],
|
||||
sdk_version: "current",
|
||||
min_sdk_version: "31",
|
||||
updatable: true,
|
||||
}
|
||||
`)
|
||||
foo := result.ModuleForTests("com.android.foo", "android_common").Rule("manifestFixer")
|
||||
android.AssertStringDoesContain(t,
|
||||
"com.android.foo: expected manifest fixer to set override-placeholder-version to 1234",
|
||||
foo.BuildParams.Args["args"],
|
||||
"--override-placeholder-version 1234",
|
||||
)
|
||||
}
|
||||
|
||||
func TestResourceDirs(t *testing.T) {
|
||||
testCases := []struct {
|
||||
name string
|
||||
|
@ -4479,3 +4522,44 @@ func TestAppMinSdkVersionOverride(t *testing.T) {
|
|||
)
|
||||
|
||||
}
|
||||
|
||||
func TestNotApplyDefaultUpdatableModuleVersion(t *testing.T) {
|
||||
result := android.GroupFixturePreparers(
|
||||
PrepareForTestWithJavaDefaultModules,
|
||||
).RunTestWithBp(t, `
|
||||
android_app {
|
||||
name: "com.android.foo",
|
||||
srcs: ["a.java"],
|
||||
sdk_version: "current",
|
||||
min_sdk_version: "31",
|
||||
}
|
||||
`)
|
||||
foo := result.ModuleForTests("com.android.foo", "android_common").Rule("manifestFixer")
|
||||
android.AssertStringDoesNotContain(t,
|
||||
"com.android.foo: expected manifest fixer to not set override-placeholder-version",
|
||||
foo.BuildParams.Args["args"],
|
||||
"--override-placeholder-version",
|
||||
)
|
||||
}
|
||||
|
||||
func TestNotApplyOverrideApexManifestDefaultVersion(t *testing.T) {
|
||||
result := android.GroupFixturePreparers(
|
||||
PrepareForTestWithJavaDefaultModules,
|
||||
android.FixtureMergeEnv(map[string]string{
|
||||
"OVERRIDE_APEX_MANIFEST_DEFAULT_VERSION": "1234",
|
||||
}),
|
||||
).RunTestWithBp(t, `
|
||||
android_app {
|
||||
name: "com.android.foo",
|
||||
srcs: ["a.java"],
|
||||
sdk_version: "current",
|
||||
min_sdk_version: "31",
|
||||
}
|
||||
`)
|
||||
foo := result.ModuleForTests("com.android.foo", "android_common").Rule("manifestFixer")
|
||||
android.AssertStringDoesNotContain(t,
|
||||
"com.android.foo: expected manifest fixer to not set override-placeholder-version",
|
||||
foo.BuildParams.Args["args"],
|
||||
"--override-placeholder-version",
|
||||
)
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue