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

Commit 3b585fc1 authored by Ioana Alexandru's avatar Ioana Alexandru Committed by Android (Google) Code Review
Browse files

Merge "Check URIs in notification public version." into udc-dev

parents af4534f6 13bfb228
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -2840,6 +2840,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
@@ -5617,6 +5617,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");
+0 −1
Original line number Diff line number Diff line
@@ -87,7 +87,6 @@ public class NotificationVisitUrisTest extends UiServiceTestCase {
    // This list should be emptied! Items can be removed as bugs are fixed.
    private static final Multimap<Class<?>, String> KNOWN_BAD =
            ImmutableMultimap.<Class<?>, String>builder()
                    .put(Notification.Builder.class, "setPublicVersion") // b/276294099
                    .put(RemoteViews.class, "setIcon") // b/281018094
                    .put(Notification.WearableExtender.class, "addAction") // TODO: b/281044385
                    .put(Person.Builder.class, "setUri") // TODO: b/281044385