Check URIs in notification public version. am: 67cd169d07

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23410117

Change-Id: Id30c1d3408d03ebe264b6df0a1f69f0784fba1f4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Ioana Alexandru
2023-05-25 10:31:31 +00:00
committed by Automerger Merge Worker
2 changed files with 24 additions and 0 deletions

View File

@@ -2761,6 +2761,10 @@ public class Notification implements Parcelable
* @hide
*/
public void visitUris(@NonNull Consumer<Uri> visitor) {
if (publicVersion != null) {
publicVersion.visitUris(visitor);
}
visitor.accept(sound);
if (tickerView != null) tickerView.visitUris(visitor);

View File

@@ -4482,6 +4482,26 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
verify(visitor, times(1)).accept(eq(historyUri2));
}
@Test
public void testVisitUris_publicVersion() throws Exception {
final Icon smallIconPublic = Icon.createWithContentUri("content://media/small/icon");
final Icon largeIconPrivate = Icon.createWithContentUri("content://media/large/icon");
Notification publicVersion = new Notification.Builder(mContext, "a")
.setContentTitle("notification with uris")
.setSmallIcon(smallIconPublic)
.build();
Notification n = new Notification.Builder(mContext, "a")
.setLargeIcon(largeIconPrivate)
.setPublicVersion(publicVersion)
.build();
Consumer<Uri> visitor = (Consumer<Uri>) spy(Consumer.class);
n.visitUris(visitor);
verify(visitor, times(1)).accept(eq(smallIconPublic.getUri()));
verify(visitor, times(1)).accept(eq(largeIconPrivate.getUri()));
}
@Test
public void testVisitUris_audioContentsString() throws Exception {
final Uri audioContents = Uri.parse("content://com.example/audio");