summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorTony Wickham <twickham@google.com>2017-03-27 17:56:55 +0000
committerandroid-build-merger <android-build-merger@google.com>2017-03-27 17:56:55 +0000
commitc455293fa328ff144132e0a7b486662b9cbf5fa3 (patch)
tree34ae1afb4a379c2330b7f57f2361f8a4d1483f8e /tests
parent66d91e51d4ea5f3dc0cc603559a341c9c662289b (diff)
parentc3dfed43eb69acb0ccc0d8a91815ebefc40cc286 (diff)
downloadandroid_packages_apps_Trebuchet-c455293fa328ff144132e0a7b486662b9cbf5fa3.tar.gz
android_packages_apps_Trebuchet-c455293fa328ff144132e0a7b486662b9cbf5fa3.tar.bz2
android_packages_apps_Trebuchet-c455293fa328ff144132e0a7b486662b9cbf5fa3.zip
Merge "De-dupe shortcuts with the same id as the main notification." into ub-launcher3-dorval
am: c3dfed43eb Change-Id: I60bbede53d61f117596e90eb3363a4cb5eac7245
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/launcher3/popup/PopupPopulatorTest.java32
1 files changed, 31 insertions, 1 deletions
diff --git a/tests/src/com/android/launcher3/popup/PopupPopulatorTest.java b/tests/src/com/android/launcher3/popup/PopupPopulatorTest.java
index 0843d9b59..2ad9b35ae 100644
--- a/tests/src/com/android/launcher3/popup/PopupPopulatorTest.java
+++ b/tests/src/com/android/launcher3/popup/PopupPopulatorTest.java
@@ -58,11 +58,34 @@ public class PopupPopulatorTest {
MAX_ITEMS - NUM_DYNAMIC, NUM_DYNAMIC);
}
+ @Test
+ public void testDeDupeShortcutId() {
+ // Successfully remove one of the shortcuts
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(3, 0), 2, 0, generateId(true, 1));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(0, 3), 0, 2, generateId(false, 1));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(2, 2), 2, 1, generateId(false, 1));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(2, 2), 1, 2, generateId(true, 1));
+ // Successfully keep all shortcuts when id doesn't exist
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(3, 0), 3, 0, generateId(false, 1));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(3, 0), 3, 0, generateId(true, 4));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(2, 2), 2, 2, generateId(false, 4));
+ filterShortcutsAndAssertNumStaticAndDynamic(createShortcutsList(2, 2), 2, 2, generateId(true, 4));
+ }
+
+ private String generateId(boolean isStatic, int rank) {
+ return (isStatic ? "static" : "dynamic") + rank;
+ }
+
private void filterShortcutsAndAssertNumStaticAndDynamic(
List<ShortcutInfoCompat> shortcuts, int expectedStatic, int expectedDynamic) {
+ filterShortcutsAndAssertNumStaticAndDynamic(shortcuts, expectedStatic, expectedDynamic, null);
+ }
+
+ private void filterShortcutsAndAssertNumStaticAndDynamic(List<ShortcutInfoCompat> shortcuts,
+ int expectedStatic, int expectedDynamic, String shortcutIdToRemove) {
Collections.shuffle(shortcuts);
List<ShortcutInfoCompat> filteredShortcuts = PopupPopulator.sortAndFilterShortcuts(
- shortcuts);
+ shortcuts, shortcutIdToRemove);
assertIsSorted(filteredShortcuts);
int numStatic = 0;
@@ -113,6 +136,7 @@ public class PopupPopulatorTest {
private class Shortcut extends ShortcutInfoCompat {
private boolean mIsStatic;
private int mRank;
+ private String mId;
public Shortcut(ShortcutInfo shortcutInfo) {
super(shortcutInfo);
@@ -122,6 +146,7 @@ public class PopupPopulatorTest {
this(null);
mIsStatic = isStatic;
mRank = rank;
+ mId = generateId(isStatic, rank);
}
@Override
@@ -138,5 +163,10 @@ public class PopupPopulatorTest {
public int getRank() {
return mRank;
}
+
+ @Override
+ public String getId() {
+ return mId;
+ }
}
} \ No newline at end of file