diff --git a/src/com/android/settings/notification/NotificationPreferenceController.java b/src/com/android/settings/notification/NotificationPreferenceController.java index d09ea4dc3dc..2ae7019ea3c 100644 --- a/src/com/android/settings/notification/NotificationPreferenceController.java +++ b/src/com/android/settings/notification/NotificationPreferenceController.java @@ -74,7 +74,9 @@ public abstract class NotificationPreferenceController extends AbstractPreferenc return false; } if (mChannelGroup != null) { - return !mChannelGroup.isBlocked(); + if (mChannelGroup.isBlocked()) { + return false; + } } if (mChannel != null) { return mChannel.getImportance() != IMPORTANCE_NONE; diff --git a/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java index cde5b900cf1..b024cee3632 100644 --- a/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java @@ -105,10 +105,12 @@ public class NotificationPreferenceControllerTest { @Test public void isAvailable_notIfChannelBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); + when(group.isBlocked()).thenReturn(false); NotificationChannel channel = mock(NotificationChannel.class); when(channel.getImportance()).thenReturn(IMPORTANCE_NONE); - mController.onResume(appRow, channel, null, null); + mController.onResume(appRow, channel, group, null); assertFalse(mController.isAvailable()); }