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

Commit 10f4d427 authored by Jay Aliomer's avatar Jay Aliomer Committed by Gerrit Code Review
Browse files

Merge "Update NotificationRecord of snooze even after it is cancelled"

parents 9e5de85e 7bb4802a
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -231,9 +231,6 @@ public class SnoozeHelper {
            return;
        }
        NotificationRecord existing = pkgRecords.get(record.getKey());
        if (existing != null && existing.isCanceled) {
            return;
        }
        pkgRecords.put(record.getKey(), record);
    }

+20 −0
Original line number Diff line number Diff line
@@ -226,6 +226,26 @@ public class SnoozeHelperTest extends UiServiceTestCase {
        verify(mCallback, times(1)).repost(UserHandle.USER_SYSTEM, r);
    }

    @Test
    public void testUpdateAfterCancel() throws Exception {
        // snooze a notification
        NotificationRecord r = getNotificationRecord("pkg", 1, "one", UserHandle.SYSTEM);
        mSnoozeHelper.snooze(r , 1000);

        // cancel the notification
        mSnoozeHelper.cancel(UserHandle.USER_SYSTEM, false);

        // update the notification
        r = getNotificationRecord("pkg", 1, "one", UserHandle.SYSTEM);
        mSnoozeHelper.update(UserHandle.USER_SYSTEM, r);

        // verify callback is called when repost (snooze is expired)
        verify(mCallback, never()).repost(anyInt(), any(NotificationRecord.class));
        mSnoozeHelper.repost(r.getKey(), UserHandle.USER_SYSTEM);
        verify(mCallback, times(1)).repost(UserHandle.USER_SYSTEM, r);
        assertFalse(r.isCanceled);
    }

    @Test
    public void testGetSnoozedByUser() throws Exception {
        NotificationRecord r = getNotificationRecord("pkg", 1, "one", UserHandle.SYSTEM);