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

Commit bfda16a0 authored by Julia Reynolds's avatar Julia Reynolds Committed by Automerger Merge Worker
Browse files

Merge "Prevent apps from creating blocked channel groups" into sc-dev am: 5769ab47 am: 89c7ef75

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

Change-Id: I6f5ab5a891962742e3ecc038055e4835d5cbb6a7
parents 34e5b686 89c7ef75
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -796,6 +796,9 @@ public class PreferencesHelper implements RankingConfig {
            if (r == null) {
                throw new IllegalArgumentException("Invalid package");
            }
            if (fromTargetApp) {
                group.setBlocked(false);
            }
            final NotificationChannelGroup oldGroup = r.groups.get(group.getId());
            if (oldGroup != null) {
                group.setChannels(oldGroup.getChannels());
+14 −1
Original line number Diff line number Diff line
@@ -2223,6 +2223,19 @@ public class PreferencesHelperTest extends UiServiceTestCase {
        assertTrue(mHelper.isGroupBlocked(PKG_N_MR1, UID_N_MR1, group.getId()));
    }

    @Test
    public void testIsGroupBlocked_appCannotCreateAsBlocked() throws Exception {
        NotificationChannelGroup group = new NotificationChannelGroup("id", "name");
        group.setBlocked(true);
        mHelper.createNotificationChannelGroup(PKG_N_MR1, UID_N_MR1, group, true);
        assertFalse(mHelper.isGroupBlocked(PKG_N_MR1, UID_N_MR1, group.getId()));

        NotificationChannelGroup group3 = group.clone();
        group3.setBlocked(false);
        mHelper.createNotificationChannelGroup(PKG_N_MR1, UID_N_MR1, group3, true);
        assertFalse(mHelper.isGroupBlocked(PKG_N_MR1, UID_N_MR1, group.getId()));
    }

    @Test
    public void testIsGroup_appCannotResetBlock() throws Exception {
        NotificationChannelGroup group = new NotificationChannelGroup("id", "name");
@@ -3615,7 +3628,7 @@ public class PreferencesHelperTest extends UiServiceTestCase {
    public void testGetConversations_noDisabledGroups() {
        NotificationChannelGroup group = new NotificationChannelGroup("a", "a");
        group.setBlocked(true);
        mHelper.createNotificationChannelGroup(PKG_O, UID_O, group, true);
        mHelper.createNotificationChannelGroup(PKG_O, UID_O, group, false);
        NotificationChannel parent = new NotificationChannel("parent", "p", 1);
        mHelper.createNotificationChannel(PKG_O, UID_O, parent, true, false);