java_sdk_library: Use WriteFileRule for writing permissions.xml
Use the `WriteFileRule` to write the permissions file for shared libraries instead of generating a custom bash rule. Test: TH Change-Id: I904cf0742bfec46ed45ec7801bb9bd3dc3047185
This commit is contained in:
@@ -227,19 +227,21 @@ func TestJavaSdkLibrary_UpdatableLibrary(t *testing.T) {
|
||||
`)
|
||||
|
||||
// test that updatability attributes are passed on correctly
|
||||
fooUpdatable := result.ModuleForTests("fooUpdatable.xml", "android_common").Rule("java_sdk_xml")
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `on-bootclasspath-since=\"U\"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `on-bootclasspath-before=\"V\"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `min-device-sdk=\"W\"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `max-device-sdk=\"X\"`)
|
||||
fooUpdatable := result.ModuleForTests("fooUpdatable.xml", "android_common").Output("fooUpdatable.xml")
|
||||
fooUpdatableContents := android.ContentFromFileRuleForTests(t, result.TestContext, fooUpdatable)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml contents", fooUpdatableContents, `on-bootclasspath-since="U"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml contents", fooUpdatableContents, `on-bootclasspath-before="V"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml contents", fooUpdatableContents, `min-device-sdk="W"`)
|
||||
android.AssertStringDoesContain(t, "fooUpdatable.xml contents", fooUpdatableContents, `max-device-sdk="X"`)
|
||||
|
||||
// double check that updatability attributes are not written if they don't exist in the bp file
|
||||
// the permissions file for the foo library defined above
|
||||
fooPermissions := result.ModuleForTests("foo.xml", "android_common").Rule("java_sdk_xml")
|
||||
android.AssertStringDoesNotContain(t, "foo.xml java_sdk_xml command", fooPermissions.RuleParams.Command, `on-bootclasspath-since`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml java_sdk_xml command", fooPermissions.RuleParams.Command, `on-bootclasspath-before`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml java_sdk_xml command", fooPermissions.RuleParams.Command, `min-device-sdk`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml java_sdk_xml command", fooPermissions.RuleParams.Command, `max-device-sdk`)
|
||||
fooPermissions := result.ModuleForTests("foo.xml", "android_common").Output("foo.xml")
|
||||
fooPermissionsContents := android.ContentFromFileRuleForTests(t, result.TestContext, fooPermissions)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml contents", fooPermissionsContents, `on-bootclasspath-since`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml contents", fooPermissionsContents, `on-bootclasspath-before`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml contents", fooPermissionsContents, `min-device-sdk`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml contents", fooPermissionsContents, `max-device-sdk`)
|
||||
}
|
||||
|
||||
func TestJavaSdkLibrary_UpdatableLibrary_Validation_ValidVersion(t *testing.T) {
|
||||
@@ -370,9 +372,10 @@ func TestJavaSdkLibrary_UpdatableLibrary_usesNewTag(t *testing.T) {
|
||||
}
|
||||
`)
|
||||
// test that updatability attributes are passed on correctly
|
||||
fooUpdatable := result.ModuleForTests("foo.xml", "android_common").Rule("java_sdk_xml")
|
||||
android.AssertStringDoesContain(t, "foo.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `<apex-library`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml java_sdk_xml command", fooUpdatable.RuleParams.Command, `<library`)
|
||||
fooUpdatable := result.ModuleForTests("foo.xml", "android_common").Output("foo.xml")
|
||||
fooUpdatableContents := android.ContentFromFileRuleForTests(t, result.TestContext, fooUpdatable)
|
||||
android.AssertStringDoesContain(t, "foo.xml contents", fooUpdatableContents, `<apex-library`)
|
||||
android.AssertStringDoesNotContain(t, "foo.xml contents", fooUpdatableContents, `<library`)
|
||||
}
|
||||
|
||||
func TestJavaSdkLibrary_StubOrImplOnlyLibs(t *testing.T) {
|
||||
@@ -1707,9 +1710,9 @@ func TestSdkLibraryDependency(t *testing.T) {
|
||||
}
|
||||
`)
|
||||
|
||||
barPermissions := result.ModuleForTests("bar.xml", "android_common").Rule("java_sdk_xml")
|
||||
|
||||
android.AssertStringDoesContain(t, "bar.xml java_sdk_xml command", barPermissions.RuleParams.Command, `dependency=\"foo\"`)
|
||||
barPermissions := result.ModuleForTests("bar.xml", "android_common").Output("bar.xml")
|
||||
barContents := android.ContentFromFileRuleForTests(t, result.TestContext, barPermissions)
|
||||
android.AssertStringDoesContain(t, "bar.xml java_sdk_xml command", barContents, `dependency="foo"`)
|
||||
}
|
||||
|
||||
func TestSdkLibraryExportableStubsLibrary(t *testing.T) {
|
||||
|
Reference in New Issue
Block a user