Add property Exportable to aconfig_declarations
Only when aconfig_declarations explicitly set this property true, its flags will be repackaged. If a java_aconfig_library has mode "exported", its corresponding aconfig_declarations must have exportable prop set to true. Test: Added unit tests and CI Bug: 310504781 Ignore-AOSP-First: this change will be cherry picked to aosp Change-Id: Ie9526e3755a6e7d142b377d5dd85a1bc60ffabc5
This commit is contained in:
@@ -27,6 +27,7 @@ func TestAconfigDeclarations(t *testing.T) {
|
||||
name: "module_name",
|
||||
package: "com.example.package",
|
||||
container: "com.android.foo",
|
||||
exportable: true,
|
||||
srcs: [
|
||||
"foo.aconfig",
|
||||
"bar.aconfig",
|
||||
@@ -41,6 +42,7 @@ func TestAconfigDeclarations(t *testing.T) {
|
||||
depData, _ := android.SingletonModuleProvider(result, module, android.AconfigDeclarationsProviderKey)
|
||||
android.AssertStringEquals(t, "package", depData.Package, "com.example.package")
|
||||
android.AssertStringEquals(t, "container", depData.Container, "com.android.foo")
|
||||
android.AssertBoolEquals(t, "exportable", depData.Exportable, true)
|
||||
if !strings.HasSuffix(depData.IntermediateCacheOutputPath.String(), "/intermediate.pb") {
|
||||
t.Errorf("Missing intermediates proto path in provider: %s", depData.IntermediateCacheOutputPath.String())
|
||||
}
|
||||
@@ -48,3 +50,22 @@ func TestAconfigDeclarations(t *testing.T) {
|
||||
t.Errorf("Missing intermediates text path in provider: %s", depData.IntermediateDumpOutputPath.String())
|
||||
}
|
||||
}
|
||||
|
||||
func TestAconfigDeclarationsWithExportableUnset(t *testing.T) {
|
||||
bp := `
|
||||
aconfig_declarations {
|
||||
name: "module_name",
|
||||
package: "com.example.package",
|
||||
container: "com.android.foo",
|
||||
srcs: [
|
||||
"foo.aconfig",
|
||||
"bar.aconfig",
|
||||
],
|
||||
}
|
||||
`
|
||||
result := runTest(t, android.FixtureExpectsNoErrors, bp)
|
||||
|
||||
module := result.ModuleForTests("module_name", "").Module().(*DeclarationsModule)
|
||||
depData, _ := android.SingletonModuleProvider(result, module, android.AconfigDeclarationsProviderKey)
|
||||
android.AssertBoolEquals(t, "exportable", depData.Exportable, false)
|
||||
}
|
||||
|
Reference in New Issue
Block a user