summaryrefslogtreecommitdiff
path: root/tests/activity
diff options
context:
space:
mode:
author mrenouf <mrenouf@google.com> 2023-12-01 13:48:32 -0500
committer Mark Renouf <mrenouf@google.com> 2024-01-18 21:10:00 -0500
commit5e5dd511a3031df38dfe35ca741e31ca9f0eec65 (patch)
treed07a6d2a468abc339630081ffb6a654ca4dde8a8 /tests/activity
parent99c9828d732ff25c87e8b41e386131dae70b4652 (diff)
Refactor ChooserRequestParameters usage
Creates ChooserRequest data class Uses validation lib to implement parsing of source data Introduces ChooserViewModel as a new target to begin migration of control flow, data and dependencies out of ChooserActivity and into smaller testable units. Test: atest IntentResolver-tests-activity:com.android.intentresolver.v2 Bug: 309960444 Change-Id: I39b3517ec9e17525441d349b3da139ad5956c600
Diffstat (limited to 'tests/activity')
-rw-r--r--tests/activity/src/com/android/intentresolver/v2/ChooserWrapperActivity.java13
-rw-r--r--tests/activity/src/com/android/intentresolver/v2/ResolverWrapperActivity.java2
-rw-r--r--tests/activity/src/com/android/intentresolver/v2/TestChooserActivityLogic.kt17
3 files changed, 18 insertions, 14 deletions
diff --git a/tests/activity/src/com/android/intentresolver/v2/ChooserWrapperActivity.java b/tests/activity/src/com/android/intentresolver/v2/ChooserWrapperActivity.java
index 0b268905..e7c8cce3 100644
--- a/tests/activity/src/com/android/intentresolver/v2/ChooserWrapperActivity.java
+++ b/tests/activity/src/com/android/intentresolver/v2/ChooserWrapperActivity.java
@@ -40,6 +40,7 @@ import com.android.intentresolver.chooser.DisplayResolveInfo;
import com.android.intentresolver.chooser.TargetInfo;
import com.android.intentresolver.emptystate.CrossProfileIntentsChecker;
import com.android.intentresolver.shortcuts.ShortcutLoader;
+import com.android.intentresolver.v2.ui.model.ChooserRequest;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import java.util.List;
@@ -54,12 +55,14 @@ public class ChooserWrapperActivity extends ChooserActivity implements IChooserW
private UsageStatsManager mUsm;
@Override
- protected final ActivityLogic createActivityLogic() {
+ protected final ChooserActivityLogic createActivityLogic(ChooserRequest chooserRequest) {
return new TestChooserActivityLogic(
- "ChooserWrapper",
- /* activity = */ this,
- this::onWorkProfileStatusUpdated,
- sOverrides);
+ "ChooserWrapper",
+ /* activity = */ this,
+ this::onWorkProfileStatusUpdated,
+ chooserRequest,
+ sOverrides.annotatedUserHandles,
+ sOverrides.mWorkProfileAvailability);
}
// ResolverActivity (the base class of ChooserActivity) inspects the launched-from UID at
diff --git a/tests/activity/src/com/android/intentresolver/v2/ResolverWrapperActivity.java b/tests/activity/src/com/android/intentresolver/v2/ResolverWrapperActivity.java
index d06b7929..9eaf9261 100644
--- a/tests/activity/src/com/android/intentresolver/v2/ResolverWrapperActivity.java
+++ b/tests/activity/src/com/android/intentresolver/v2/ResolverWrapperActivity.java
@@ -61,7 +61,7 @@ public class ResolverWrapperActivity extends ResolverActivity {
new CountingIdlingResource("LoadLabelTask");
@Override
- protected final ActivityLogic createActivityLogic() {
+ protected final ResolverActivityLogic createActivityLogic() {
return new TestResolverActivityLogic(
"ResolverWrapper",
this,
diff --git a/tests/activity/src/com/android/intentresolver/v2/TestChooserActivityLogic.kt b/tests/activity/src/com/android/intentresolver/v2/TestChooserActivityLogic.kt
index 0849e511..3c22254a 100644
--- a/tests/activity/src/com/android/intentresolver/v2/TestChooserActivityLogic.kt
+++ b/tests/activity/src/com/android/intentresolver/v2/TestChooserActivityLogic.kt
@@ -3,25 +3,26 @@ package com.android.intentresolver.v2
import androidx.activity.ComponentActivity
import com.android.intentresolver.AnnotatedUserHandles
import com.android.intentresolver.WorkProfileAvailabilityManager
+import com.android.intentresolver.v2.ui.model.ChooserRequest
/** Activity logic for use when testing [ChooserActivity]. */
class TestChooserActivityLogic(
tag: String,
activity: ComponentActivity,
onWorkProfileStatusUpdated: () -> Unit,
- private val overrideData: ChooserActivityOverrideData,
+ chooserRequest: ChooserRequest? = null,
+ private val annotatedUserHandlesOverride: AnnotatedUserHandles?,
+ private val workProfileAvailabilityOverride: WorkProfileAvailabilityManager?,
) :
ChooserActivityLogic(
tag,
activity,
onWorkProfileStatusUpdated,
+ chooserRequest,
) {
+ override val annotatedUserHandles: AnnotatedUserHandles?
+ get() = annotatedUserHandlesOverride ?: super.annotatedUserHandles
- override val annotatedUserHandles: AnnotatedUserHandles? by lazy {
- overrideData.annotatedUserHandles
- }
-
- override val workProfileAvailabilityManager: WorkProfileAvailabilityManager by lazy {
- overrideData.mWorkProfileAvailability ?: super.workProfileAvailabilityManager
- }
+ override val workProfileAvailabilityManager: WorkProfileAvailabilityManager
+ get() = workProfileAvailabilityOverride ?: super.workProfileAvailabilityManager
}