diff --git a/src/com/android/settings/notification/BlockPreferenceController.java b/src/com/android/settings/notification/BlockPreferenceController.java index 8b270989a8a..9ea29feccca 100644 --- a/src/com/android/settings/notification/BlockPreferenceController.java +++ b/src/com/android/settings/notification/BlockPreferenceController.java @@ -56,7 +56,7 @@ public class BlockPreferenceController extends NotificationPreferenceController } if (mChannel != null) { return isChannelBlockable(); - } else if (mChannelGroup != null && mChannelGroup.getGroup() != null) { + } else if (mChannelGroup != null) { return isChannelGroupBlockable(); } else { return !mAppRow.systemApp || (mAppRow.systemApp && mAppRow.banned); @@ -80,7 +80,7 @@ public class BlockPreferenceController extends NotificationPreferenceController if (mChannel != null) { bar.setChecked(!mAppRow.banned && mChannel.getImportance() != NotificationManager.IMPORTANCE_NONE); - } else if (mChannelGroup != null && mChannelGroup.getGroup() != null) { + } else if (mChannelGroup != null) { bar.setChecked(!mAppRow.banned && !mChannelGroup.isBlocked()); } else { bar.setChecked(!mAppRow.banned); @@ -107,9 +107,9 @@ public class BlockPreferenceController extends NotificationPreferenceController mAppRow.banned = blocked; mBackend.setNotificationsEnabledForPackage(mAppRow.pkg, mAppRow.uid, !blocked); } - } else if (mChannelGroup != null && mChannelGroup.getGroup() != null) { + } else if (mChannelGroup != null) { mChannelGroup.setBlocked(blocked); - mBackend.updateChannelGroup(mAppRow.pkg, mAppRow.uid, mChannelGroup.getGroup()); + mBackend.updateChannelGroup(mAppRow.pkg, mAppRow.uid, mChannelGroup); } else if (mAppRow != null) { mAppRow.banned = blocked; mBackend.setNotificationsEnabledForPackage(mAppRow.pkg, mAppRow.uid, !blocked); diff --git a/src/com/android/settings/notification/ChannelGroupNotificationSettings.java b/src/com/android/settings/notification/ChannelGroupNotificationSettings.java index d641df7889e..f16031e16e7 100644 --- a/src/com/android/settings/notification/ChannelGroupNotificationSettings.java +++ b/src/com/android/settings/notification/ChannelGroupNotificationSettings.java @@ -40,7 +40,7 @@ public class ChannelGroupNotificationSettings extends NotificationSettingsBase { @Override public void onResume() { super.onResume(); - if (mAppRow == null || mChannelGroup == null || mChannelGroup.getGroup() == null) { + if (mAppRow == null || mChannelGroup == null) { Log.w(TAG, "Missing package or uid or packageinfo or group"); finish(); return; @@ -85,7 +85,7 @@ public class ChannelGroupNotificationSettings extends NotificationSettingsBase { getPreferenceScreen().removePreference(p); } } - if (mChannelGroup.getGroup().getChannels().isEmpty()) { + if (mChannelGroup.getChannels().isEmpty()) { Preference empty = new Preference(getPrefContext()); empty.setTitle(R.string.no_channels); empty.setEnabled(false); @@ -93,7 +93,7 @@ public class ChannelGroupNotificationSettings extends NotificationSettingsBase { mDynamicPreferences.add(empty); } else { - final List channels = mChannelGroup.getGroup().getChannels(); + final List channels = mChannelGroup.getChannels(); Collections.sort(channels, mChannelComparator); for (NotificationChannel channel : channels) { mDynamicPreferences.add(populateSingleChannelPrefs( diff --git a/src/com/android/settings/notification/HeaderPreferenceController.java b/src/com/android/settings/notification/HeaderPreferenceController.java index f30abf48ef0..ff687e8049f 100644 --- a/src/com/android/settings/notification/HeaderPreferenceController.java +++ b/src/com/android/settings/notification/HeaderPreferenceController.java @@ -73,27 +73,27 @@ public class HeaderPreferenceController extends NotificationPreferenceController CharSequence getLabel() { return mChannel != null ? mChannel.getName() - : mChannelGroup != null && mChannelGroup.getGroup() != null - ? mChannelGroup.getGroup().getName() + : mChannelGroup != null + ? mChannelGroup.getName() : mAppRow.label; } @Override public CharSequence getSummary() { if (mChannel != null) { - if (mChannelGroup != null && mChannelGroup.getGroup() != null - && !TextUtils.isEmpty(mChannelGroup.getGroup().getName())) { - final SpannableStringBuilder summary = new SpannableStringBuilder(); - BidiFormatter bidi = BidiFormatter.getInstance(); - summary.append(bidi.unicodeWrap(mAppRow.label.toString())); - summary.append(bidi.unicodeWrap(mContext.getText( - R.string.notification_header_divider_symbol_with_spaces))); - summary.append(bidi.unicodeWrap(mChannelGroup.getGroup().getName().toString())); - return summary.toString(); - } else { - return mAppRow.label.toString(); - } - } else if (mChannelGroup != null && mChannelGroup.getGroup() != null) { + if (mChannelGroup != null + && !TextUtils.isEmpty(mChannelGroup.getName())) { + final SpannableStringBuilder summary = new SpannableStringBuilder(); + BidiFormatter bidi = BidiFormatter.getInstance(); + summary.append(bidi.unicodeWrap(mAppRow.label.toString())); + summary.append(bidi.unicodeWrap(mContext.getText( + R.string.notification_header_divider_symbol_with_spaces))); + summary.append(bidi.unicodeWrap(mChannelGroup.getName().toString())); + return summary.toString(); + } else { + return mAppRow.label.toString(); + } + } else if (mChannelGroup != null) { return mAppRow.label.toString(); } else { return ""; diff --git a/src/com/android/settings/notification/NotificationPreferenceController.java b/src/com/android/settings/notification/NotificationPreferenceController.java index 797f30d3f7b..c0bb7050045 100644 --- a/src/com/android/settings/notification/NotificationPreferenceController.java +++ b/src/com/android/settings/notification/NotificationPreferenceController.java @@ -25,13 +25,11 @@ import android.app.NotificationManager; import android.content.Context; import android.content.pm.PackageManager; import android.os.UserManager; -import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceGroup; import android.support.v7.preference.PreferenceScreen; import android.util.Log; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.core.AbstractPreferenceController; @@ -41,11 +39,12 @@ import java.util.Objects; * Parent class for preferences appearing on notification setting pages at the app, * notification channel group, or notification channel level. */ -public abstract class NotificationPreferenceController extends AbstractPreferenceController -{ +public abstract class NotificationPreferenceController extends AbstractPreferenceController { private static final String TAG = "ChannelPrefContr"; - @Nullable protected NotificationChannel mChannel; - @Nullable protected NotificationChannelGroupWrapper mChannelGroup; + @Nullable + protected NotificationChannel mChannel; + @Nullable + protected NotificationChannelGroup mChannelGroup; protected RestrictedLockUtils.EnforcedAdmin mAdmin; protected NotificationBackend.AppRow mAppRow; protected final NotificationManager mNm; @@ -78,7 +77,7 @@ public abstract class NotificationPreferenceController extends AbstractPreferenc if (mChannel != null) { return mChannel.getImportance() != IMPORTANCE_NONE; } - if (mChannelGroup != null && mChannelGroup.getGroup() == null) { + if (mChannelGroup != null) { return !mChannelGroup.isBlocked(); } return true; @@ -125,7 +124,7 @@ public abstract class NotificationPreferenceController extends AbstractPreferenc } protected void onResume(NotificationBackend.AppRow appRow, - @Nullable NotificationChannel channel, @Nullable NotificationChannelGroupWrapper group, + @Nullable NotificationChannel channel, @Nullable NotificationChannelGroup group, RestrictedLockUtils.EnforcedAdmin admin) { mAppRow = appRow; mChannel = channel; @@ -172,7 +171,7 @@ public abstract class NotificationPreferenceController extends AbstractPreferenc } protected boolean isChannelGroupBlockable() { - if (mChannelGroup != null && mChannelGroup.getGroup() != null && mAppRow != null) { + if (mChannelGroup != null && mAppRow != null) { if (!mAppRow.systemApp) { return true; } @@ -183,6 +182,6 @@ public abstract class NotificationPreferenceController extends AbstractPreferenc } protected boolean hasValidGroup() { - return mChannelGroup != null && mChannelGroup.getGroup() != null; + return mChannelGroup != null; } } diff --git a/src/com/android/settings/notification/NotificationSettingsBase.java b/src/com/android/settings/notification/NotificationSettingsBase.java index 7583ec94070..6436de63c25 100644 --- a/src/com/android/settings/notification/NotificationSettingsBase.java +++ b/src/com/android/settings/notification/NotificationSettingsBase.java @@ -49,7 +49,6 @@ import com.android.settings.applications.AppInfoBase; import com.android.settings.core.SubSettingLauncher; import com.android.settings.dashboard.DashboardFragment; import com.android.settings.widget.MasterCheckBoxPreference; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import com.android.settingslib.RestrictedLockUtils; import java.util.ArrayList; @@ -70,7 +69,7 @@ abstract public class NotificationSettingsBase extends DashboardFragment { protected String mPkg; protected PackageInfo mPkgInfo; protected EnforcedAdmin mSuspendedAppsAdmin; - protected NotificationChannelGroupWrapper mChannelGroup; + protected NotificationChannelGroup mChannelGroup; protected NotificationChannel mChannel; protected NotificationBackend.AppRow mAppRow; @@ -168,7 +167,7 @@ abstract public class NotificationSettingsBase extends DashboardFragment { if (mChannel != null && !TextUtils.isEmpty(mChannel.getGroup())) { group = mBackend.getGroup(mPkg, mUid, mChannel.getGroup()); if (group != null) { - mChannelGroup = new NotificationChannelGroupWrapper(group); + mChannelGroup = group; } } } @@ -209,7 +208,7 @@ abstract public class NotificationSettingsBase extends DashboardFragment { } if (mChannelGroup != null) { mAppRow.settingsIntent.putExtra( - Notification.EXTRA_CHANNEL_GROUP_ID, mChannelGroup.getGroup().getId()); + Notification.EXTRA_CHANNEL_GROUP_ID, mChannelGroup.getId()); } } } diff --git a/src/com/android/settings/notification/NotificationsOffPreferenceController.java b/src/com/android/settings/notification/NotificationsOffPreferenceController.java index ba304de3665..fad0e27bb4e 100644 --- a/src/com/android/settings/notification/NotificationsOffPreferenceController.java +++ b/src/com/android/settings/notification/NotificationsOffPreferenceController.java @@ -21,7 +21,6 @@ import android.support.v7.preference.Preference; import com.android.settings.R; import com.android.settings.core.PreferenceControllerMixin; -import com.android.settingslib.widget.FooterPreference; public class NotificationsOffPreferenceController extends NotificationPreferenceController implements PreferenceControllerMixin { @@ -51,7 +50,7 @@ public class NotificationsOffPreferenceController extends NotificationPreference if (mAppRow != null) { if (mChannel != null) { preference.setTitle(R.string.channel_notifications_off_desc); - } else if (mChannelGroup != null && mChannelGroup.getGroup() == null) { + } else if (mChannelGroup != null) { preference.setTitle(R.string.channel_group_notifications_off_desc); } else { preference.setTitle(R.string.app_notifications_off_desc); diff --git a/src/com/android/settings/wrapper/NotificationChannelGroupWrapper.java b/src/com/android/settings/wrapper/NotificationChannelGroupWrapper.java deleted file mode 100644 index dbfff1a6c4b..00000000000 --- a/src/com/android/settings/wrapper/NotificationChannelGroupWrapper.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (C) 2017 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.settings.wrapper; - -import android.app.NotificationChannelGroup; - -/** - * Wrapper for {@link NotificationChannelGroup} until roboletric supports O MR1. - */ -public class NotificationChannelGroupWrapper { - - private final NotificationChannelGroup mGroup; - - public NotificationChannelGroupWrapper(NotificationChannelGroup group) { - mGroup = group; - } - - /** - * Get the real group object so we can call APIs directly on it. - */ - public NotificationChannelGroup getGroup() { - return mGroup; - } - - public String getDescription() { - if (mGroup != null) { - return mGroup.getDescription(); - } - return null; - } - - public void setDescription(String desc) { - if (mGroup != null) { - mGroup.setDescription(desc); - } - } - - public boolean isBlocked() { - if (mGroup != null) { - return mGroup.isBlocked(); - } - return true; - } - - public void setBlocked(boolean blocked) { - if (mGroup != null) { - mGroup.setBlocked(blocked); - } - } -} \ No newline at end of file diff --git a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java index cd3fe287be7..fbc9689f620 100644 --- a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java @@ -46,7 +46,6 @@ import com.android.settings.R; import com.android.settings.applications.LayoutPreference; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.widget.SwitchBar; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import org.junit.Before; import org.junit.Test; @@ -113,7 +112,7 @@ public class BlockPreferenceControllerTest { public void testIsAvailable_notIfGroupNotBlockable() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.systemApp = true; - mController.onResume(appRow, null, mock(NotificationChannelGroupWrapper.class), null); + mController.onResume(appRow, null, mock(NotificationChannelGroup.class), null); assertFalse(mController.isAvailable()); } @@ -166,8 +165,7 @@ public class BlockPreferenceControllerTest { @Test public void testUpdateState_group() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(true); mController.onResume(appRow, null, group, null); mController.updateState(mPreference); diff --git a/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java index 5c55c52c32b..eb01cbbdb10 100644 --- a/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java @@ -26,13 +26,12 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.NotificationChannel; +import android.app.NotificationChannelGroup; import android.app.NotificationManager; import android.content.Context; import android.os.UserManager; import android.support.v7.preference.Preference; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; - import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -82,7 +81,7 @@ public class DeletedChannelsPreferenceControllerTest { @Test public void isAvailable_groupScreen_never() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - mController.onResume(appRow, null, mock(NotificationChannelGroupWrapper.class), null); + mController.onResume(appRow, null, mock(NotificationChannelGroup.class), null); assertFalse(mController.isAvailable()); } diff --git a/tests/robotests/src/com/android/settings/notification/DescriptionPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/DescriptionPreferenceControllerTest.java index a1b2837f9a8..07b17bfa5e7 100644 --- a/tests/robotests/src/com/android/settings/notification/DescriptionPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/DescriptionPreferenceControllerTest.java @@ -33,7 +33,6 @@ import android.os.UserManager; import android.support.v7.preference.Preference; import com.android.settings.testutils.SettingsRobolectricTestRunner; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import org.junit.Before; import org.junit.Test; @@ -79,8 +78,7 @@ public class DescriptionPreferenceControllerTest { @Test public void testIsAvailable_notIfChannelGroupBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.isBlocked()).thenReturn(true); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); mController.onResume(appRow, null, group, null); assertFalse(mController.isAvailable()); } @@ -106,8 +104,7 @@ public class DescriptionPreferenceControllerTest { @Test public void testIsAvailable_notIfNoChannelGroupDesc() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); mController.onResume(appRow, null, group, null); assertFalse(mController.isAvailable()); } @@ -125,8 +122,7 @@ public class DescriptionPreferenceControllerTest { @Test public void testIsAvailable_channelGroup() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.getDescription()).thenReturn("something"); when(group.isBlocked()).thenReturn(false); mController.onResume(appRow, null, group, null); @@ -152,8 +148,7 @@ public class DescriptionPreferenceControllerTest { @Test public void testUpdateState_channelGroup() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.getDescription()).thenReturn("something"); mController.onResume(appRow, null, group, null); diff --git a/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java index 7e34f89c173..29773d2cc1a 100644 --- a/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/HeaderPreferenceControllerTest.java @@ -36,7 +36,6 @@ import android.view.View; import com.android.settings.applications.LayoutPreference; import com.android.settings.testutils.SettingsRobolectricTestRunner; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import org.junit.Before; import org.junit.Test; @@ -104,12 +103,11 @@ public class HeaderPreferenceControllerTest { assertEquals(appRow.label, mController.getLabel()); NotificationChannelGroup group = new NotificationChannelGroup("id", "name"); - NotificationChannelGroupWrapper gWrapper = new NotificationChannelGroupWrapper(group); - mController.onResume(appRow, null, gWrapper, null); + mController.onResume(appRow, null, group, null); assertEquals(group.getName(), mController.getLabel()); NotificationChannel channel = new NotificationChannel("cid", "cname", IMPORTANCE_NONE); - mController.onResume(appRow, channel, gWrapper, null); + mController.onResume(appRow, channel, group, null); assertEquals(channel.getName(), mController.getLabel()); } @@ -121,12 +119,11 @@ public class HeaderPreferenceControllerTest { assertEquals("", mController.getSummary()); NotificationChannelGroup group = new NotificationChannelGroup("id", "name"); - NotificationChannelGroupWrapper gWrapper = new NotificationChannelGroupWrapper(group); - mController.onResume(appRow, null, gWrapper, null); + mController.onResume(appRow, null, group, null); assertEquals(appRow.label, mController.getSummary()); NotificationChannel channel = new NotificationChannel("cid", "cname", IMPORTANCE_NONE); - mController.onResume(appRow, channel, gWrapper, null); + mController.onResume(appRow, channel, group, null); assertTrue(mController.getSummary().toString().contains(group.getName())); assertTrue(mController.getSummary().toString().contains(appRow.label)); diff --git a/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java index 4b6c76ec403..3ead72a2f31 100644 --- a/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/NotificationPreferenceControllerTest.java @@ -40,7 +40,6 @@ import android.os.UserManager; import android.support.v7.preference.Preference; import com.android.settings.testutils.SettingsRobolectricTestRunner; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import com.android.settingslib.RestrictedLockUtils; import org.junit.Before; @@ -76,7 +75,7 @@ public class NotificationPreferenceControllerTest { } @Test - public void noCrashIfNoOnResume() throws Exception { + public void noCrashIfNoOnResume() { mController.isAvailable(); mController.updateState(mock(Preference.class)); assertFalse(mController.checkCanBeVisible(IMPORTANCE_UNSPECIFIED)); @@ -87,22 +86,22 @@ public class NotificationPreferenceControllerTest { } @Test - public void isAvailable_notIfNull() throws Exception { + public void isAvailable_notIfNull() { mController.onResume(null, null, null, null); assertFalse(mController.isAvailable()); } @Test - public void isAvailable_notIfAppBlocked() throws Exception { + public void isAvailable_notIfAppBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.banned = true; mController.onResume(appRow, mock(NotificationChannel.class), - mock(NotificationChannelGroupWrapper.class), null); + mock(NotificationChannelGroup.class), null); assertFalse(mController.isAvailable()); } @Test - public void isAvailable_notIfChannelBlocked() throws Exception { + public void isAvailable_notIfChannelBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); NotificationChannel channel = mock(NotificationChannel.class); when(channel.getImportance()).thenReturn(IMPORTANCE_NONE); @@ -112,10 +111,10 @@ public class NotificationPreferenceControllerTest { } @Test - public void isAvailable_notIfChannelGroupBlocked() throws Exception { + public void isAvailable_notIfChannelGroupBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); NotificationChannel channel = mock(NotificationChannel.class); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); mController.onResume(appRow, channel, group, null); when(group.isBlocked()).thenReturn(true); @@ -123,11 +122,11 @@ public class NotificationPreferenceControllerTest { } @Test - public void isAvailable() throws Exception { + public void isAvailable() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); NotificationChannel channel = mock(NotificationChannel.class); when(channel.getImportance()).thenReturn(IMPORTANCE_DEFAULT); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(false); mController.onResume(appRow, channel, group, null); @@ -135,10 +134,10 @@ public class NotificationPreferenceControllerTest { } @Test - public void testOnResume() throws Exception { + public void testOnResume() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); NotificationChannel channel = mock(NotificationChannel.class); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); RestrictedLockUtils.EnforcedAdmin admin = mock(RestrictedLockUtils.EnforcedAdmin.class); mController.onResume(appRow, channel, group, admin); @@ -266,8 +265,7 @@ public class NotificationPreferenceControllerTest { public void testIsChannelGroupBlockable_nonSystemBlockable() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.systemApp = false; - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(false); mController.onResume(appRow, null, group, null); @@ -278,8 +276,7 @@ public class NotificationPreferenceControllerTest { public void testIsChannelGroupBlockable_SystemNotBlockable() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.systemApp = true; - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(false); mController.onResume(appRow, null, group, null); @@ -290,8 +287,7 @@ public class NotificationPreferenceControllerTest { public void testIsChannelGroupBlockable_canUndoSystemBlock() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.systemApp = true; - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); - when(group.getGroup()).thenReturn(mock(NotificationChannelGroup.class)); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(true); mController.onResume(appRow, null, group, null); diff --git a/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java index dcf3b7b3a2d..741362eeee1 100644 --- a/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java @@ -17,20 +17,19 @@ package com.android.settings.notification; import static android.app.NotificationManager.IMPORTANCE_NONE; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertTrue; +import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.app.NotificationChannel; +import android.app.NotificationChannelGroup; import android.app.NotificationManager; import android.content.Context; import android.os.UserManager; import android.support.v7.preference.Preference; import com.android.settings.testutils.SettingsRobolectricTestRunner; -import com.android.settings.wrapper.NotificationChannelGroupWrapper; import org.junit.Before; import org.junit.Test; @@ -70,16 +69,16 @@ public class NotificationsOffPreferenceControllerTest { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); appRow.banned = true; mController.onResume(appRow, null, null, null); - assertTrue(mController.isAvailable()); + assertThat(mController.isAvailable()).isTrue(); } @Test public void testIsAvailable_yesIfChannelGroupBlocked() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(true); mController.onResume(appRow, null, group, null); - assertTrue(mController.isAvailable()); + assertThat(mController.isAvailable()).isTrue(); } @Test @@ -88,7 +87,7 @@ public class NotificationsOffPreferenceControllerTest { NotificationChannel channel = mock(NotificationChannel.class); when(channel.getImportance()).thenReturn(IMPORTANCE_NONE); mController.onResume(appRow, channel, null, null); - assertTrue(mController.isAvailable()); + assertThat(mController.isAvailable()).isTrue(); } @Test @@ -101,22 +100,22 @@ public class NotificationsOffPreferenceControllerTest { Preference pref = new Preference(RuntimeEnvironment.application); mController.updateState(pref); - assertTrue(pref.getTitle().toString().contains("category")); - assertFalse(pref.isSelectable()); + assertThat(pref.getTitle().toString()).contains("category"); + assertThat(pref.isSelectable()).isFalse(); } @Test public void testUpdateState_channelGroup() { NotificationBackend.AppRow appRow = new NotificationBackend.AppRow(); - NotificationChannelGroupWrapper group = mock(NotificationChannelGroupWrapper.class); + NotificationChannelGroup group = mock(NotificationChannelGroup.class); when(group.isBlocked()).thenReturn(true); mController.onResume(appRow, null, group, null); Preference pref = new Preference(RuntimeEnvironment.application); mController.updateState(pref); - assertTrue(pref.getTitle().toString().contains("group")); - assertFalse(pref.isSelectable()); + assertThat(pref.getTitle().toString()).contains("group"); + assertThat(pref.isSelectable()).isFalse(); } @Test @@ -128,7 +127,7 @@ public class NotificationsOffPreferenceControllerTest { Preference pref = new Preference(RuntimeEnvironment.application); mController.updateState(pref); - assertTrue(pref.getTitle().toString().contains("app")); - assertFalse(pref.isSelectable()); + assertThat(pref.getTitle().toString()).contains("app"); + assertThat(pref.isSelectable()).isFalse(); } }