Merge "Move NotificationEntryBuilder to collection pkg"
This commit is contained in:
@@ -80,7 +80,7 @@ android_library {
|
||||
filegroup {
|
||||
name: "SystemUI-tests-utils",
|
||||
srcs: [
|
||||
"tests/src/com/android/systemui/statusbar/NotificationEntryBuilder.java",
|
||||
"tests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryBuilder.java",
|
||||
"tests/src/com/android/systemui/statusbar/RankingBuilder.java",
|
||||
"tests/src/com/android/systemui/statusbar/SbnBuilder.java",
|
||||
],
|
||||
|
||||
@@ -18,7 +18,6 @@ package com.android.systemui.statusbar.notification.collection;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.statusbar.notification.collection.provider.DerivedMember;
|
||||
import com.android.systemui.statusbar.notification.collection.provider.IsHighPriorityProvider;
|
||||
@@ -68,8 +67,7 @@ public abstract class ListEntry {
|
||||
return mParent;
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
public void setParent(@Nullable GroupEntry parent) {
|
||||
void setParent(@Nullable GroupEntry parent) {
|
||||
if (!Objects.equals(mParent, parent)) {
|
||||
invalidateParent();
|
||||
mParent = parent;
|
||||
|
||||
@@ -46,11 +46,11 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.internal.messages.nano.SystemMessageProto;
|
||||
import com.android.systemui.appops.AppOpsController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifCollection;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
|
||||
import junit.framework.Assert;
|
||||
|
||||
|
||||
@@ -27,8 +27,8 @@ import android.app.Notification;
|
||||
import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -39,9 +39,9 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.bubbles.BubbleData.TimeSource;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationTestHelper;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
@@ -28,8 +28,8 @@ import android.testing.TestableLooper;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -40,6 +40,7 @@ import androidx.test.filters.SmallTest;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -52,6 +52,7 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationFilter;
|
||||
import com.android.systemui.statusbar.notification.NotificationInterruptionStateProvider;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.policy.BatteryController;
|
||||
import com.android.systemui.statusbar.policy.HeadsUpManager;
|
||||
|
||||
|
||||
@@ -56,6 +56,7 @@ import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ import com.android.systemui.statusbar.NotificationRemoteInputManager.RemoteInput
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager.SmartReplyHistoryExtender;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.policy.RemoteInputUriController;
|
||||
|
||||
@@ -44,6 +44,7 @@ import com.android.systemui.bubbles.BubbleController;
|
||||
import com.android.systemui.bubbles.BubblesTestActivity;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationContentInflater.InflationFlag;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationContentInflaterTest;
|
||||
|
||||
@@ -47,6 +47,7 @@ import com.android.systemui.statusbar.notification.DynamicPrivacyController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.logging.NotificationLogger;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableView;
|
||||
|
||||
@@ -41,6 +41,7 @@ import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.phone.StatusBar;
|
||||
import com.android.systemui.statusbar.policy.RemoteInputUriController;
|
||||
|
||||
|
||||
@@ -66,7 +66,6 @@ import com.android.systemui.InitController;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLifetimeExtender;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
@@ -80,6 +79,7 @@ import com.android.systemui.statusbar.SmartReplyController;
|
||||
import com.android.systemui.statusbar.StatusBarIconView;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager.KeyguardEnvironment;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationRankingManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationRowBinder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationRowBinderImpl;
|
||||
|
||||
@@ -41,11 +41,11 @@ import androidx.test.filters.SmallTest;
|
||||
import com.android.systemui.ForegroundServiceController;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationTestHelper;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager.KeyguardEnvironment;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.phone.NotificationGroupManager;
|
||||
import com.android.systemui.statusbar.phone.ShadeController;
|
||||
|
||||
@@ -30,9 +30,9 @@ import androidx.test.filters.SmallTest;
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationListContainer;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController.DeviceProvisionedListener;
|
||||
|
||||
@@ -31,9 +31,9 @@ import android.testing.TestableLooper;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -27,7 +27,6 @@ import android.testing.AndroidTestingRunner;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -48,7 +48,6 @@ import androidx.test.filters.SmallTest;
|
||||
import com.android.internal.statusbar.IStatusBarService;
|
||||
import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.NotificationListener.NotifServiceListener;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
|
||||
@@ -38,7 +38,6 @@ import android.util.ArrayMap;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifListBuilderImpl.OnRenderListListener;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.OnBeforeRenderListListener;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.OnBeforeSortListener;
|
||||
|
||||
@@ -14,18 +14,19 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.systemui.statusbar;
|
||||
package com.android.systemui.statusbar.notification.collection;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.Notification;
|
||||
import android.app.NotificationChannel;
|
||||
import android.app.NotificationManager.Importance;
|
||||
import android.app.NotificationManager;
|
||||
import android.content.Context;
|
||||
import android.os.UserHandle;
|
||||
import android.service.notification.SnoozeCriterion;
|
||||
import android.service.notification.StatusBarNotification;
|
||||
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
import com.android.systemui.statusbar.SbnBuilder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -34,6 +35,8 @@ import java.util.ArrayList;
|
||||
* and Ranking. Is largely a proxy for the SBN and Ranking builders, but does a little extra magic
|
||||
* to make sure the keys match between the two, etc.
|
||||
*
|
||||
* Has the ability to set ListEntry properties as well.
|
||||
*
|
||||
* Only for use in tests.
|
||||
*/
|
||||
public class NotificationEntryBuilder {
|
||||
@@ -41,10 +44,35 @@ public class NotificationEntryBuilder {
|
||||
private final RankingBuilder mRankingBuilder = new RankingBuilder();
|
||||
private StatusBarNotification mSbn = null;
|
||||
|
||||
/* ListEntry properties */
|
||||
private GroupEntry mParent;
|
||||
private int mSection;
|
||||
|
||||
public NotificationEntry build() {
|
||||
StatusBarNotification sbn = mSbn != null ? mSbn : mSbnBuilder.build();
|
||||
mRankingBuilder.setKey(sbn.getKey());
|
||||
return new NotificationEntry(sbn, mRankingBuilder.build());
|
||||
final NotificationEntry entry = new NotificationEntry(sbn, mRankingBuilder.build());
|
||||
|
||||
/* ListEntry properties */
|
||||
entry.setParent(mParent);
|
||||
entry.setSection(mSection);
|
||||
return entry;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the parent.
|
||||
*/
|
||||
public NotificationEntryBuilder setParent(@Nullable GroupEntry parent) {
|
||||
mParent = parent;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the section.
|
||||
*/
|
||||
public NotificationEntryBuilder setSection(int section) {
|
||||
mSection = section;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -176,7 +204,7 @@ public class NotificationEntryBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
public NotificationEntryBuilder setImportance(@Importance int importance) {
|
||||
public NotificationEntryBuilder setImportance(@NotificationManager.Importance int importance) {
|
||||
mRankingBuilder.setImportance(importance);
|
||||
return this;
|
||||
}
|
||||
@@ -52,7 +52,6 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
import com.android.systemui.statusbar.SbnBuilder;
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@ import android.service.notification.NotificationListenerService.RankingMap
|
||||
import android.testing.AndroidTestingRunner
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder
|
||||
import com.android.systemui.statusbar.NotificationEntryHelper.modifyRanking
|
||||
import com.android.systemui.statusbar.NotificationMediaManager
|
||||
import com.android.systemui.statusbar.notification.NotificationFilter
|
||||
|
||||
@@ -35,10 +35,10 @@ import androidx.test.filters.SmallTest;
|
||||
import androidx.test.runner.AndroidJUnit4;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifListBuilderImpl;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter;
|
||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||
|
||||
|
||||
@@ -36,11 +36,11 @@ import androidx.test.filters.SmallTest;
|
||||
import com.android.systemui.ForegroundServiceController;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.appops.AppOpsController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifCollection;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifLifetimeExtender;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifListBuilderImpl;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -38,12 +38,12 @@ import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.GroupEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifListBuilderImpl;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter;
|
||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||
|
||||
@@ -93,7 +93,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void unfilteredState() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// THEN don't filter out the entry
|
||||
assertFalse(mKeyguardFilter.shouldFilterOut(mEntry, 0));
|
||||
@@ -102,7 +102,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void notificationNotForCurrentProfile() {
|
||||
// GIVEN the notification isn't for the given user
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
when(mLockscreenUserManager.isCurrentProfile(NOTIF_USER_ID)).thenReturn(false);
|
||||
|
||||
// THEN filter out the entry
|
||||
@@ -112,7 +112,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void keyguardNotShowing() {
|
||||
// GIVEN the lockscreen isn't showing
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
when(mKeyguardStateController.isShowing()).thenReturn(false);
|
||||
|
||||
// THEN don't filter out the entry
|
||||
@@ -122,7 +122,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void doNotShowLockscreenNotifications() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// WHEN we shouldn't show any lockscreen notifications
|
||||
when(mLockscreenUserManager.shouldShowLockscreenNotifications()).thenReturn(false);
|
||||
@@ -134,7 +134,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void lockdown() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// WHEN the notification's user is in lockdown:
|
||||
when(mKeyguardUpdateMonitor.isUserInLockdown(NOTIF_USER_ID)).thenReturn(true);
|
||||
@@ -146,7 +146,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void publicMode_settingsDisallow() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// WHEN the notification's user is in public mode and settings are configured to disallow
|
||||
// notifications in public mode
|
||||
@@ -161,7 +161,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void publicMode_notifDisallowed() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// WHEN the notification's user is in public mode and settings are configured to disallow
|
||||
// notifications in public mode
|
||||
@@ -177,7 +177,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
@Test
|
||||
public void doesNotExceedThresholdToShow() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
setupUnfilteredState(mEntry);
|
||||
|
||||
// WHEN the notification doesn't exceed the threshold to show on the lockscreen
|
||||
mEntry.setRanking(new RankingBuilder()
|
||||
@@ -191,34 +191,42 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
|
||||
@Test
|
||||
public void summaryExceedsThresholdToShow() {
|
||||
// GIVEN an 'unfiltered-keyguard-showing' state
|
||||
setupUnfilteredState();
|
||||
// GIVEN the notification doesn't exceed the threshold to show on the lockscreen
|
||||
// but it's part of a group (has a parent)
|
||||
final GroupEntry parent = new GroupEntry("test_group_key");
|
||||
final NotificationEntry entryWithParent = new NotificationEntryBuilder()
|
||||
.setParent(parent)
|
||||
.setUser(new UserHandle(NOTIF_USER_ID))
|
||||
.build();
|
||||
|
||||
// WHEN the notification doesn't exceed the threshold to show on the lockscreen
|
||||
// but its summary does
|
||||
mEntry.setRanking(new RankingBuilder()
|
||||
.setKey(mEntry.getKey())
|
||||
setupUnfilteredState(entryWithParent);
|
||||
entryWithParent.setRanking(new RankingBuilder()
|
||||
.setKey(entryWithParent.getKey())
|
||||
.setImportance(IMPORTANCE_MIN)
|
||||
.build());
|
||||
|
||||
final NotificationEntry summary = new NotificationEntryBuilder().build();
|
||||
summary.setRanking(new RankingBuilder()
|
||||
.setKey(summary.getKey())
|
||||
// WHEN its parent has a summary that exceeds threshold to show on lockscreen
|
||||
parent.setSummary(new NotificationEntryBuilder()
|
||||
.setImportance(IMPORTANCE_HIGH)
|
||||
.build());
|
||||
final GroupEntry group = new GroupEntry(mEntry.getSbn().getGroupKey());
|
||||
group.setSummary(summary);
|
||||
mEntry.setParent(group);
|
||||
|
||||
// THEN don't filter out the entry
|
||||
assertFalse(mKeyguardFilter.shouldFilterOut(mEntry, 0));
|
||||
assertFalse(mKeyguardFilter.shouldFilterOut(entryWithParent, 0));
|
||||
|
||||
// WHEN its parent has a summary that doesn't exceed threshold to show on lockscreen
|
||||
parent.setSummary(new NotificationEntryBuilder()
|
||||
.setImportance(IMPORTANCE_MIN)
|
||||
.build());
|
||||
|
||||
// THEN filter out the entry
|
||||
assertTrue(mKeyguardFilter.shouldFilterOut(entryWithParent, 0));
|
||||
}
|
||||
|
||||
/**
|
||||
* setup a state where the notification will not be filtered by the
|
||||
* KeyguardNotificationCoordinator when the keyguard is showing.
|
||||
*/
|
||||
private void setupUnfilteredState() {
|
||||
private void setupUnfilteredState(NotificationEntry entry) {
|
||||
// notification is for current profile
|
||||
when(mLockscreenUserManager.isCurrentProfile(NOTIF_USER_ID)).thenReturn(true);
|
||||
|
||||
@@ -239,7 +247,7 @@ public class KeyguardCoordinatorTest extends SysuiTestCase {
|
||||
|
||||
// entry's ranking - should show on all lockscreens
|
||||
// + priority of the notification exceeds the threshold to be shown on the lockscreen
|
||||
mEntry.setRanking(new RankingBuilder()
|
||||
entry.setRanking(new RankingBuilder()
|
||||
.setKey(mEntry.getKey())
|
||||
.setVisibilityOverride(VISIBILITY_PUBLIC)
|
||||
.setImportance(IMPORTANCE_HIGH)
|
||||
|
||||
@@ -32,10 +32,10 @@ import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.RankingBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotifListBuilderImpl;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.listbuilder.pluggable.NotifFilter;
|
||||
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -33,8 +33,8 @@ import android.testing.AndroidTestingRunner;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -39,12 +39,12 @@ import com.android.internal.statusbar.NotificationVisibility;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.UiOffloadThread;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.StatusBarStateControllerImpl;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryListener;
|
||||
import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationListContainer;
|
||||
|
||||
|
||||
@@ -78,10 +78,10 @@ import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.bubbles.BubbleController;
|
||||
import com.android.systemui.bubbles.BubblesTestActivity;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.SbnBuilder;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
|
||||
@@ -38,8 +38,8 @@ import android.view.ViewGroup;
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.utils.leaks.LeakCheckedTest;
|
||||
|
||||
import org.junit.After;
|
||||
|
||||
@@ -55,7 +55,6 @@ import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.classifier.FalsingManagerFake;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.statusbar.EmptyShadeView;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.NotificationPresenter;
|
||||
@@ -71,6 +70,7 @@ import com.android.systemui.statusbar.notification.NotificationSectionsFeatureMa
|
||||
import com.android.systemui.statusbar.notification.TestableNotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationRankingManager;
|
||||
import com.android.systemui.statusbar.notification.logging.NotifLog;
|
||||
import com.android.systemui.statusbar.notification.people.PeopleHubSectionFooterViewAdapter;
|
||||
|
||||
@@ -33,9 +33,9 @@ import com.android.systemui.bubbles.BubbleController;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.AlertingNotificationManager;
|
||||
import com.android.systemui.statusbar.AlertingNotificationManagerTest;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.policy.AccessibilityManagerWrapper;
|
||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||
|
||||
|
||||
@@ -26,8 +26,8 @@ import android.content.Context;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,7 +40,6 @@ import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
@@ -54,6 +53,7 @@ import com.android.systemui.statusbar.notification.NotificationEntryManager;
|
||||
import com.android.systemui.statusbar.notification.NotificationInterruptionStateProvider;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationRowBinderImpl;
|
||||
import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationGutsManager;
|
||||
|
||||
@@ -98,7 +98,6 @@ import com.android.systemui.statusbar.CommandQueue;
|
||||
import com.android.systemui.statusbar.FeatureFlags;
|
||||
import com.android.systemui.statusbar.KeyguardIndicationController;
|
||||
import com.android.systemui.statusbar.NavigationBarController;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationListener;
|
||||
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
|
||||
import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
@@ -120,6 +119,7 @@ import com.android.systemui.statusbar.notification.NotificationInterruptionState
|
||||
import com.android.systemui.statusbar.notification.NotificationWakeUpCoordinator;
|
||||
import com.android.systemui.statusbar.notification.VisualStabilityManager;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.notification.collection.init.NewNotifPipeline;
|
||||
import com.android.systemui.statusbar.notification.logging.NotificationLogger;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationGutsManager;
|
||||
|
||||
@@ -42,9 +42,9 @@ import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.shared.system.ActivityManagerWrapper;
|
||||
import com.android.systemui.shared.system.DevicePolicyManagerWrapper;
|
||||
import com.android.systemui.shared.system.PackageManagerWrapper;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationEntryHelper;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.policy.InflatedSmartReplies.SmartRepliesAndActions;
|
||||
import com.android.systemui.statusbar.policy.SmartReplyView.SmartActions;
|
||||
import com.android.systemui.statusbar.policy.SmartReplyView.SmartReplies;
|
||||
|
||||
@@ -51,10 +51,10 @@ import com.android.systemui.R;
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.plugins.ActivityStarter.OnDismissAction;
|
||||
import com.android.systemui.statusbar.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.NotificationRemoteInputManager;
|
||||
import com.android.systemui.statusbar.SmartReplyController;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntry;
|
||||
import com.android.systemui.statusbar.notification.collection.NotificationEntryBuilder;
|
||||
import com.android.systemui.statusbar.phone.KeyguardDismissUtil;
|
||||
import com.android.systemui.statusbar.phone.ShadeController;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user