Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c86b19d8 authored by Ioana Alexandru's avatar Ioana Alexandru Committed by Automerger Merge Worker
Browse files

Check URIs in notification public version. am: 67cd169d am: 364105af am:...

Check URIs in notification public version. am: 67cd169d am: 364105af am: effbcfe8 am: 03196bf4

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



Change-Id: Ibf804a2529ce6f6cb9cd69dbfd79adeaac2d8772
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents cdbb1021 03196bf4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -2807,6 +2807,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);
+20 −0
Original line number Diff line number Diff line
@@ -5153,6 +5153,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");