summaryrefslogtreecommitdiff
path: root/java/tests/src
diff options
context:
space:
mode:
author 1 <mrcasey@google.com> 2023-04-14 03:04:40 +0000
committer 1 <mrcasey@google.com> 2023-04-17 20:39:26 +0000
commitcd42caeb00aa0bdd33f565816bdbfb46ccbbad24 (patch)
tree0188d15a89c29380d75d042eb1959e011120b22d /java/tests/src
parentcca6189957d7158c68661c5c0f6b88c5e317a50f (diff)
Move Nearby to the front of the app list.
Introduce a concept of a "cemented" component that always goes to the front of the list. Just allowing up to one of these since we really don't expect to ever have more than one. Remove the nearby action code as well, along with some associated cleanup. Not in this CL: Prevent this target from being pinned. Bug: 275787600 Test: atest com.android.intentresolver Change-Id: I55c551f930de2d642cd0e5a42c6cdbd6e1918f0b
Diffstat (limited to 'java/tests/src')
-rw-r--r--java/tests/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUiTest.kt1
-rw-r--r--java/tests/src/com/android/intentresolver/model/AbstractResolverComparatorTest.java74
2 files changed, 52 insertions, 23 deletions
diff --git a/java/tests/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUiTest.kt b/java/tests/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUiTest.kt
index 7b9a0ce6..a7273a86 100644
--- a/java/tests/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUiTest.kt
+++ b/java/tests/src/com/android/intentresolver/contentpreview/ChooserContentPreviewUiTest.kt
@@ -53,7 +53,6 @@ class ChooserContentPreviewUiTest {
private val actionFactory = object : ActionFactory {
override fun createCopyButton() = ActionRow.Action(label = "Copy", icon = null) {}
override fun createEditButton(): ActionRow.Action? = null
- override fun createNearbyButton(): ActionRow.Action? = null
override fun createCustomActions(): List<ActionRow.Action> = emptyList()
override fun getModifyShareAction(): ActionRow.Action? = null
override fun getExcludeSharedTextAction(): Consumer<Boolean> = Consumer<Boolean> {}
diff --git a/java/tests/src/com/android/intentresolver/model/AbstractResolverComparatorTest.java b/java/tests/src/com/android/intentresolver/model/AbstractResolverComparatorTest.java
index 892a2e28..5f0ead7b 100644
--- a/java/tests/src/com/android/intentresolver/model/AbstractResolverComparatorTest.java
+++ b/java/tests/src/com/android/intentresolver/model/AbstractResolverComparatorTest.java
@@ -40,52 +40,82 @@ public class AbstractResolverComparatorTest {
@Test
public void testPinned() {
- ResolvedComponentInfo r1 = new ResolvedComponentInfo(
- new ComponentName("package", "class"), new Intent(), new ResolveInfo()
- );
+ ResolvedComponentInfo r1 = createResolvedComponentInfo(
+ new ComponentName("package", "class"));
r1.setPinned(true);
- ResolvedComponentInfo r2 = new ResolvedComponentInfo(
- new ComponentName("zackage", "zlass"), new Intent(), new ResolveInfo()
- );
+ ResolvedComponentInfo r2 = createResolvedComponentInfo(
+ new ComponentName("zackage", "zlass"));
Context context = InstrumentationRegistry.getTargetContext();
- AbstractResolverComparator comparator = getTestComparator(context);
+ AbstractResolverComparator comparator = getTestComparator(context, null);
assertEquals("Pinned ranks over unpinned", -1, comparator.compare(r1, r2));
assertEquals("Unpinned ranks under pinned", 1, comparator.compare(r2, r1));
}
-
@Test
public void testBothPinned() {
- ResolveInfo pmInfo1 = new ResolveInfo();
- pmInfo1.activityInfo = new ActivityInfo();
- pmInfo1.activityInfo.packageName = "aaa";
-
- ResolvedComponentInfo r1 = new ResolvedComponentInfo(
- new ComponentName("package", "class"), new Intent(), pmInfo1);
+ ResolvedComponentInfo r1 = createResolvedComponentInfo(
+ new ComponentName("package", "class"));
r1.setPinned(true);
- ResolveInfo pmInfo2 = new ResolveInfo();
- pmInfo2.activityInfo = new ActivityInfo();
- pmInfo2.activityInfo.packageName = "zzz";
- ResolvedComponentInfo r2 = new ResolvedComponentInfo(
- new ComponentName("zackage", "zlass"), new Intent(), pmInfo2);
+ ResolvedComponentInfo r2 = createResolvedComponentInfo(
+ new ComponentName("zackage", "zlass"));
r2.setPinned(true);
Context context = InstrumentationRegistry.getTargetContext();
- AbstractResolverComparator comparator = getTestComparator(context);
+ AbstractResolverComparator comparator = getTestComparator(context, null);
assertEquals("Both pinned should rank alphabetically", -1, comparator.compare(r1, r2));
}
- private AbstractResolverComparator getTestComparator(Context context) {
+ @Test
+ public void testPromoteToFirst() {
+ ComponentName promoteToFirst = new ComponentName("promoted-package", "class");
+ ResolvedComponentInfo r1 = createResolvedComponentInfo(promoteToFirst);
+
+ ResolvedComponentInfo r2 = createResolvedComponentInfo(
+ new ComponentName("package", "class"));
+
+ Context context = InstrumentationRegistry.getTargetContext();
+ AbstractResolverComparator comparator = getTestComparator(context, promoteToFirst);
+
+ assertEquals("PromoteToFirst ranks over non-cemented", -1, comparator.compare(r1, r2));
+ assertEquals("Non-cemented ranks under PromoteToFirst", 1, comparator.compare(r2, r1));
+ }
+
+ @Test
+ public void testPromoteToFirstOverPinned() {
+ ComponentName cementedComponent = new ComponentName("promoted-package", "class");
+ ResolvedComponentInfo r1 = createResolvedComponentInfo(cementedComponent);
+
+ ResolvedComponentInfo r2 = createResolvedComponentInfo(
+ new ComponentName("package", "class"));
+ r2.setPinned(true);
+
+ Context context = InstrumentationRegistry.getTargetContext();
+ AbstractResolverComparator comparator = getTestComparator(context, cementedComponent);
+
+ assertEquals("PromoteToFirst ranks over pinned", -1, comparator.compare(r1, r2));
+ assertEquals("Pinned ranks under PromoteToFirst", 1, comparator.compare(r2, r1));
+ }
+
+ private ResolvedComponentInfo createResolvedComponentInfo(ComponentName component) {
+ ResolveInfo info = new ResolveInfo();
+ info.activityInfo = new ActivityInfo();
+ info.activityInfo.packageName = component.getPackageName();
+ info.activityInfo.name = component.getClassName();
+ return new ResolvedComponentInfo(component, new Intent(), info);
+ }
+
+ private AbstractResolverComparator getTestComparator(
+ Context context, ComponentName promoteToFirst) {
Intent intent = new Intent();
AbstractResolverComparator testComparator =
new AbstractResolverComparator(context, intent,
- Lists.newArrayList(context.getUser())) {
+ Lists.newArrayList(context.getUser()), promoteToFirst) {
@Override
int compare(ResolveInfo lhs, ResolveInfo rhs) {