summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mark Renouf <mrenouf@google.com> 2024-02-22 20:29:22 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2024-02-22 20:29:22 +0000
commit7ac4ff9c63deec2c1d65a15f25206bf41401a9ca (patch)
tree7f437dfd33ea725eb12761c0a0db0ef495b7c2ca
parent75513e6b14ee8287fe1891916b18d51c3c55e891 (diff)
parent686477182299c6e3780c096f3461267d4f7c4ddd (diff)
Merge "Renames ActivityLaunch to ActivityModel" into main
-rw-r--r--java/src/com/android/intentresolver/v2/ChooserActivity.java22
-rw-r--r--java/src/com/android/intentresolver/v2/ResolverActivity.java22
-rw-r--r--java/src/com/android/intentresolver/v2/ui/model/ActivityModel.kt (renamed from java/src/com/android/intentresolver/v2/ui/model/ActivityLaunch.kt)24
-rw-r--r--java/src/com/android/intentresolver/v2/ui/model/ActivityModelModule.kt (renamed from java/src/com/android/intentresolver/v2/ui/model/ActivityLaunchModule.kt)16
-rw-r--r--java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestReader.kt6
-rw-r--r--java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserViewModel.kt12
-rw-r--r--java/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestReader.kt4
-rw-r--r--tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityModelModule.kt (renamed from tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityLaunchModule.kt)12
-rw-r--r--tests/unit/src/com/android/intentresolver/v2/ui/model/ActivityLaunchTest.kt32
-rw-r--r--tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestTest.kt40
-rw-r--r--tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestTest.kt32
11 files changed, 113 insertions, 109 deletions
diff --git a/java/src/com/android/intentresolver/v2/ChooserActivity.java b/java/src/com/android/intentresolver/v2/ChooserActivity.java
index 68815067..3d8bfac5 100644
--- a/java/src/com/android/intentresolver/v2/ChooserActivity.java
+++ b/java/src/com/android/intentresolver/v2/ChooserActivity.java
@@ -156,7 +156,7 @@ import com.android.intentresolver.v2.profiles.TabConfig;
import com.android.intentresolver.v2.ui.ActionTitle;
import com.android.intentresolver.v2.ui.ShareResultSender;
import com.android.intentresolver.v2.ui.ShareResultSenderFactory;
-import com.android.intentresolver.v2.ui.model.ActivityLaunch;
+import com.android.intentresolver.v2.ui.model.ActivityModel;
import com.android.intentresolver.v2.ui.model.ChooserRequest;
import com.android.intentresolver.v2.ui.viewmodel.ChooserViewModel;
import com.android.intentresolver.widget.ImagePreviewView;
@@ -273,7 +273,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
private static final int SCROLL_STATUS_SCROLLING_VERTICAL = 1;
private static final int SCROLL_STATUS_SCROLLING_HORIZONTAL = 2;
- @Inject public ActivityLaunch mActivityLaunch;
+ @Inject public ActivityModel mActivityModel;
@Inject public FeatureFlags mFeatureFlags;
@Inject public android.service.chooser.FeatureFlags mChooserServiceFeatureFlags;
@Inject public EventLog mEventLog;
@@ -347,15 +347,15 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
public CreationExtras getDefaultViewModelCreationExtras() {
return addDefaultArgs(
super.getDefaultViewModelCreationExtras(),
- new Pair<>(ActivityLaunch.ACTIVITY_LAUNCH_KEY, mActivityLaunch));
+ new Pair<>(ActivityModel.ACTIVITY_MODEL_KEY, mActivityModel));
}
@Override
protected final void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i(TAG, "onCreate");
- Log.i(TAG, "activityLaunch=" + mActivityLaunch.toString());
- int callerUid = mActivityLaunch.getFromUid();
+ Log.i(TAG, "activityLaunch=" + mActivityModel.toString());
+ int callerUid = mActivityModel.getLaunchedFromUid();
if (callerUid < 0 || UserHandle.isIsolated(callerUid)) {
Log.e(TAG, "Can't start a resolver from uid " + callerUid);
finish();
@@ -371,7 +371,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
mViewModel.getChooserRequest().getChosenComponentSender();
if (chosenComponentSender != null) {
mShareResultSender = mShareResultSenderFactory
- .create(mActivityLaunch.getFromUid(), chosenComponentSender);
+ .create(mActivityModel.getLaunchedFromUid(), chosenComponentSender);
}
mLogic = createActivityLogic();
init();
@@ -491,7 +491,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
.get(BasePreviewViewModel.class);
previewViewModel.init(
chooserRequest.getTargetIntent(),
- mActivityLaunch.getIntent(),
+ mActivityModel.getIntent(),
chooserRequest.getAdditionalContentUri(),
chooserRequest.getFocusedItemPosition(),
mChooserServiceFeatureFlags.chooserPayloadToggling());
@@ -862,9 +862,9 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
}
} catch (RuntimeException e) {
Slog.wtf(TAG,
- "Unable to launch as uid " + mActivityLaunch.getFromUid()
- + " package " + mActivityLaunch.getFromPackage() + ", while running in "
- + ActivityThread.currentProcessName(), e);
+ "Unable to launch as uid " + mActivityModel.getLaunchedFromUid()
+ + " package " + mActivityModel.getLaunchedFromPackage() +
+ ", while running in " + ActivityThread.currentProcessName(), e);
}
}
@@ -1658,7 +1658,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements
return false;
}
- return mActivityLaunch.getIntent().getBooleanExtra(Intent.EXTRA_AUTO_LAUNCH_SINGLE_CHOICE,
+ return mActivityModel.getIntent().getBooleanExtra(Intent.EXTRA_AUTO_LAUNCH_SINGLE_CHOICE,
true);
}
diff --git a/java/src/com/android/intentresolver/v2/ResolverActivity.java b/java/src/com/android/intentresolver/v2/ResolverActivity.java
index 241b6735..98e82b00 100644
--- a/java/src/com/android/intentresolver/v2/ResolverActivity.java
+++ b/java/src/com/android/intentresolver/v2/ResolverActivity.java
@@ -113,7 +113,7 @@ import com.android.intentresolver.v2.profiles.OnProfileSelectedListener;
import com.android.intentresolver.v2.profiles.TabConfig;
import com.android.intentresolver.v2.profiles.ResolverMultiProfilePagerAdapter;
import com.android.intentresolver.v2.ui.ActionTitle;
-import com.android.intentresolver.v2.ui.model.ActivityLaunch;
+import com.android.intentresolver.v2.ui.model.ActivityModel;
import com.android.intentresolver.v2.ui.model.ResolverRequest;
import com.android.intentresolver.v2.validation.ValidationResult;
import com.android.intentresolver.widget.ResolverDrawerLayout;
@@ -149,7 +149,7 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
ResolverListAdapter.ResolverListCommunicator {
@Inject public PackageManager mPackageManager;
- @Inject public ActivityLaunch mActivityLaunch;
+ @Inject public ActivityModel mActivityModel;
@Inject public DevicePolicyResources mDevicePolicyResources;
@Inject public IntentForwarding mIntentForwarding;
private ResolverRequest mResolverRequest;
@@ -227,7 +227,7 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
public CreationExtras getDefaultViewModelCreationExtras() {
return addDefaultArgs(
super.getDefaultViewModelCreationExtras(),
- new Pair<>(ActivityLaunch.ACTIVITY_LAUNCH_KEY, mActivityLaunch));
+ new Pair<>(ActivityModel.ACTIVITY_MODEL_KEY, mActivityModel));
}
@Override
@@ -235,14 +235,14 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
super.onCreate(savedInstanceState);
setTheme(R.style.Theme_DeviceDefault_Resolver);
Log.i(TAG, "onCreate");
- Log.i(TAG, "activityLaunch=" + mActivityLaunch.toString());
- int callerUid = mActivityLaunch.getFromUid();
+ Log.i(TAG, "activityLaunch=" + mActivityModel.toString());
+ int callerUid = mActivityModel.getLaunchedFromUid();
if (callerUid < 0 || UserHandle.isIsolated(callerUid)) {
Log.e(TAG, "Can't start a resolver from uid " + callerUid);
finish();
}
- ValidationResult<ResolverRequest> result = readResolverRequest(mActivityLaunch);
+ ValidationResult<ResolverRequest> result = readResolverRequest(mActivityModel);
if (!result.isSuccess()) {
result.reportToLogcat(TAG);
finish();
@@ -748,7 +748,7 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
new ResolverRankerServiceResolverComparator(
this,
mResolverRequest.getIntent(),
- mActivityLaunch.getReferrerPackage(),
+ mActivityModel.getReferrerPackage(),
null,
null,
getResolverRankerServiceUserHandleList(userHandle),
@@ -756,9 +756,9 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
return new ResolverListController(
this,
mPackageManager,
- mActivityLaunch.getIntent(),
- mActivityLaunch.getReferrerPackage(),
- mActivityLaunch.getFromUid(),
+ mActivityModel.getIntent(),
+ mActivityModel.getReferrerPackage(),
+ mActivityModel.getLaunchedFromUid(),
resolverComparator,
getQueryIntentsUser(userHandle));
}
@@ -1479,7 +1479,7 @@ public class ResolverActivity extends Hilt_ResolverActivity implements
}
} catch (RuntimeException e) {
Slog.wtf(TAG,
- "Unable to launch as uid " + mActivityLaunch.getFromUid()
+ "Unable to launch as uid " + mActivityModel.getLaunchedFromUid()
+ " package " + getLaunchedFromPackage() + ", while running in "
+ ActivityThread.currentProcessName(), e);
}
diff --git a/java/src/com/android/intentresolver/v2/ui/model/ActivityLaunch.kt b/java/src/com/android/intentresolver/v2/ui/model/ActivityModel.kt
index e5f342d9..02bb6640 100644
--- a/java/src/com/android/intentresolver/v2/ui/model/ActivityLaunch.kt
+++ b/java/src/com/android/intentresolver/v2/ui/model/ActivityModel.kt
@@ -22,14 +22,14 @@ import android.os.Parcelable
import com.android.intentresolver.v2.ext.readParcelable
import com.android.intentresolver.v2.ext.requireParcelable
-/** Contains Activity-scope information about the state at launch time. */
-data class ActivityLaunch(
+/** Contains Activity-scope information about the state when started. */
+data class ActivityModel(
/** The [Intent] received by the app */
val intent: Intent,
/** The identifier for the sending app and user */
- val fromUid: Int,
+ val launchedFromUid: Int,
/** The package of the sending app */
- val fromPackage: String,
+ val launchedFromPackage: String,
/** The referrer as supplied to the activity. */
val referrer: Uri?
) : Parcelable {
@@ -37,8 +37,8 @@ data class ActivityLaunch(
source: Parcel
) : this(
intent = source.requireParcelable(),
- fromUid = source.readInt(),
- fromPackage = requireNotNull(source.readString()),
+ launchedFromUid = source.readInt(),
+ launchedFromPackage = requireNotNull(source.readString()),
referrer = source.readParcelable()
)
@@ -49,20 +49,20 @@ data class ActivityLaunch(
override fun writeToParcel(dest: Parcel, flags: Int) {
dest.writeParcelable(intent, flags)
- dest.writeInt(fromUid)
- dest.writeString(fromPackage)
+ dest.writeInt(launchedFromUid)
+ dest.writeString(launchedFromPackage)
dest.writeParcelable(referrer, flags)
}
companion object {
- const val ACTIVITY_LAUNCH_KEY = "com.android.intentresolver.ACTIVITY_LAUNCH"
+ const val ACTIVITY_MODEL_KEY = "com.android.intentresolver.ACTIVITY_MODEL"
@JvmField
@Suppress("unused")
val CREATOR =
- object : Parcelable.Creator<ActivityLaunch> {
- override fun newArray(size: Int) = arrayOfNulls<ActivityLaunch>(size)
- override fun createFromParcel(source: Parcel) = ActivityLaunch(source)
+ object : Parcelable.Creator<ActivityModel> {
+ override fun newArray(size: Int) = arrayOfNulls<ActivityModel>(size)
+ override fun createFromParcel(source: Parcel) = ActivityModel(source)
}
}
}
diff --git a/java/src/com/android/intentresolver/v2/ui/model/ActivityLaunchModule.kt b/java/src/com/android/intentresolver/v2/ui/model/ActivityModelModule.kt
index bb8f3a54..d9fb1fa6 100644
--- a/java/src/com/android/intentresolver/v2/ui/model/ActivityLaunchModule.kt
+++ b/java/src/com/android/intentresolver/v2/ui/model/ActivityModelModule.kt
@@ -25,19 +25,19 @@ import dagger.hilt.android.scopes.ActivityScoped
@Module
@InstallIn(ActivityComponent::class)
-object ActivityLaunchModule {
+object ActivityModelModule {
@Provides
@ActivityScoped
- fun callerInfo(activity: Activity): ActivityLaunch {
- return ActivityLaunch(
- activity.intent,
- activity.launchedFromUid,
- requireNotNull(activity.launchedFromPackage) {
+ fun activityModel(activity: Activity): ActivityModel {
+ return ActivityModel(
+ intent = activity.intent,
+ launchedFromUid = activity.launchedFromUid,
+ launchedFromPackage = requireNotNull(activity.launchedFromPackage) {
"activity.launchedFromPackage was null. This is expected to be non-null for " +
- "any system-signed application!"
+ "any system-signed application!"
},
- activity.referrer
+ referrer = activity.referrer
)
}
}
diff --git a/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestReader.kt b/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestReader.kt
index e32d69b0..8fe1dba5 100644
--- a/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestReader.kt
+++ b/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestReader.kt
@@ -47,7 +47,7 @@ import com.android.intentresolver.inject.ChooserServiceFlags
import com.android.intentresolver.util.hasValidIcon
import com.android.intentresolver.v2.ext.hasSendAction
import com.android.intentresolver.v2.ext.ifMatch
-import com.android.intentresolver.v2.ui.model.ActivityLaunch
+import com.android.intentresolver.v2.ui.model.ActivityModel
import com.android.intentresolver.v2.ui.model.ChooserRequest
import com.android.intentresolver.v2.validation.ValidationResult
import com.android.intentresolver.v2.validation.types.IntentOrUri
@@ -65,7 +65,7 @@ internal fun Intent.maybeAddSendActionFlags() =
}
fun readChooserRequest(
- launch: ActivityLaunch,
+ launch: ActivityModel,
flags: ChooserServiceFlags
): ValidationResult<ChooserRequest> {
val extras = launch.intent.extras ?: Bundle()
@@ -162,7 +162,7 @@ fun readChooserRequest(
isSendActionTarget = isSendAction,
targetType = targetIntent.type,
launchedFromPackage =
- requireNotNull(launch.fromPackage) {
+ requireNotNull(launch.launchedFromPackage) {
"launch.fromPackage was null, See Activity.getLaunchedFromPackage()"
},
title = customTitle,
diff --git a/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserViewModel.kt b/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserViewModel.kt
index a03f3769..cd1a16e3 100644
--- a/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserViewModel.kt
+++ b/java/src/com/android/intentresolver/v2/ui/viewmodel/ChooserViewModel.kt
@@ -19,8 +19,8 @@ import android.util.Log
import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.ViewModel
import com.android.intentresolver.inject.ChooserServiceFlags
-import com.android.intentresolver.v2.ui.model.ActivityLaunch
-import com.android.intentresolver.v2.ui.model.ActivityLaunch.Companion.ACTIVITY_LAUNCH_KEY
+import com.android.intentresolver.v2.ui.model.ActivityModel
+import com.android.intentresolver.v2.ui.model.ActivityModel.Companion.ACTIVITY_MODEL_KEY
import com.android.intentresolver.v2.ui.model.ChooserRequest
import com.android.intentresolver.v2.validation.ValidationResult
import dagger.hilt.android.lifecycle.HiltViewModel
@@ -36,14 +36,14 @@ constructor(
flags: ChooserServiceFlags,
) : ViewModel() {
- private val mActivityLaunch: ActivityLaunch =
- requireNotNull(args[ACTIVITY_LAUNCH_KEY]) {
- "ActivityLaunch missing in SavedStateHandle! ($ACTIVITY_LAUNCH_KEY)"
+ private val mActivityModel: ActivityModel =
+ requireNotNull(args[ACTIVITY_MODEL_KEY]) {
+ "ActivityModel missing in SavedStateHandle! ($ACTIVITY_MODEL_KEY)"
}
/** The result of reading and validating the inputs provided in savedState. */
private val status: ValidationResult<ChooserRequest> =
- readChooserRequest(mActivityLaunch, flags)
+ readChooserRequest(mActivityModel, flags)
val chooserRequest: ChooserRequest by lazy { status.getOrThrow() }
diff --git a/java/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestReader.kt b/java/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestReader.kt
index 22d76493..bbc376ea 100644
--- a/java/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestReader.kt
+++ b/java/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestReader.kt
@@ -21,7 +21,7 @@ import android.os.UserHandle
import com.android.intentresolver.v2.ResolverActivity.PROFILE_PERSONAL
import com.android.intentresolver.v2.ResolverActivity.PROFILE_WORK
import com.android.intentresolver.v2.shared.model.Profile
-import com.android.intentresolver.v2.ui.model.ActivityLaunch
+import com.android.intentresolver.v2.ui.model.ActivityModel
import com.android.intentresolver.v2.ui.model.ResolverRequest
import com.android.intentresolver.v2.validation.Validation
import com.android.intentresolver.v2.validation.ValidationResult
@@ -33,7 +33,7 @@ const val EXTRA_SELECTED_PROFILE =
"com.android.internal.app.ResolverActivity.EXTRA_SELECTED_PROFILE"
const val EXTRA_IS_AUDIO_CAPTURE_DEVICE = "is_audio_capture_device"
-fun readResolverRequest(launch: ActivityLaunch): ValidationResult<ResolverRequest> {
+fun readResolverRequest(launch: ActivityModel): ValidationResult<ResolverRequest> {
@Suppress("DEPRECATION")
return validateFrom((launch.intent.extras ?: Bundle())::get) {
val callingUser = optional(value<UserHandle>(EXTRA_CALLING_USER))
diff --git a/tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityLaunchModule.kt b/tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityModelModule.kt
index 7dd15dbe..7d05dc0f 100644
--- a/tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityLaunchModule.kt
+++ b/tests/activity/src/com/android/intentresolver/v2/ui/model/TestActivityModelModule.kt
@@ -24,13 +24,17 @@ import dagger.hilt.android.scopes.ActivityScoped
import dagger.hilt.testing.TestInstallIn
@Module
-@TestInstallIn(components = [ActivityComponent::class], replaces = [ActivityLaunchModule::class])
-class TestActivityLaunchModule {
+@TestInstallIn(components = [ActivityComponent::class], replaces = [ActivityModelModule::class])
+class TestActivityModelModule {
@Provides
@ActivityScoped
- fun activityLaunch(activity: Activity): ActivityLaunch {
- return ActivityLaunch(activity.intent, LAUNCHED_FROM_UID, LAUNCHED_FROM_PACKAGE, REFERRER)
+ fun activityModel(activity: Activity): ActivityModel {
+ return ActivityModel(
+ intent = activity.intent,
+ launchedFromUid = LAUNCHED_FROM_UID,
+ launchedFromPackage = LAUNCHED_FROM_PACKAGE,
+ referrer = REFERRER)
}
companion object {
diff --git a/tests/unit/src/com/android/intentresolver/v2/ui/model/ActivityLaunchTest.kt b/tests/unit/src/com/android/intentresolver/v2/ui/model/ActivityLaunchTest.kt
index 25eac220..e30cd81a 100644
--- a/tests/unit/src/com/android/intentresolver/v2/ui/model/ActivityLaunchTest.kt
+++ b/tests/unit/src/com/android/intentresolver/v2/ui/model/ActivityLaunchTest.kt
@@ -29,7 +29,7 @@ class ActivityLaunchTest {
@Test
fun testDefaultValues() {
- val input = ActivityLaunch(Intent(ACTION_CHOOSER), 0, "example.com", null)
+ val input = ActivityModel(Intent(ACTION_CHOOSER), 0, "example.com", null)
val output = input.toParcelAndBack()
@@ -40,7 +40,7 @@ class ActivityLaunchTest {
fun testCommonValues() {
val intent = Intent(ACTION_CHOOSER).apply { putExtra(EXTRA_TEXT, "Test") }
val input =
- ActivityLaunch(intent, 1234, "com.example", Uri.parse("android-app://example.com"))
+ ActivityModel(intent, 1234, "com.example", Uri.parse("android-app://example.com"))
val output = input.toParcelAndBack()
@@ -50,10 +50,10 @@ class ActivityLaunchTest {
@Test
fun testReferrerPackage_withAppReferrer_usesReferrer() {
val launch1 =
- ActivityLaunch(
+ ActivityModel(
intent = Intent(),
- fromUid = 1000,
- fromPackage = "other.example.com",
+ launchedFromUid = 1000,
+ launchedFromPackage = "other.example.com",
referrer = Uri.parse("android-app://app.example.com")
)
@@ -63,10 +63,10 @@ class ActivityLaunchTest {
@Test
fun testReferrerPackage_httpReferrer_isNull() {
val launch =
- ActivityLaunch(
+ ActivityModel(
intent = Intent(),
- fromUid = 1000,
- fromPackage = "example.com",
+ launchedFromUid = 1000,
+ launchedFromPackage = "example.com",
referrer = Uri.parse("http://some.other.value")
)
@@ -76,29 +76,29 @@ class ActivityLaunchTest {
@Test
fun testReferrerPackage_nullReferrer_isNull() {
val launch =
- ActivityLaunch(
+ ActivityModel(
intent = Intent(),
- fromUid = 1000,
- fromPackage = "example.com",
+ launchedFromUid = 1000,
+ launchedFromPackage = "example.com",
referrer = null
)
assertThat(launch.referrerPackage).isNull()
}
- private fun assertEquals(expected: ActivityLaunch, actual: ActivityLaunch) {
+ private fun assertEquals(expected: ActivityModel, actual: ActivityModel) {
// Test fields separately: Intent does not override equals()
assertWithMessage("%s.filterEquals(%s)", actual.intent, expected.intent)
.that(actual.intent.filterEquals(expected.intent))
.isTrue()
assertWithMessage("actual fromUid is equal to expected")
- .that(actual.fromUid)
- .isEqualTo(expected.fromUid)
+ .that(actual.launchedFromUid)
+ .isEqualTo(expected.launchedFromUid)
assertWithMessage("actual fromPackage is equal to expected")
- .that(actual.fromPackage)
- .isEqualTo(expected.fromPackage)
+ .that(actual.launchedFromPackage)
+ .isEqualTo(expected.launchedFromPackage)
assertWithMessage("actual referrer is equal to expected")
.that(actual.referrer)
diff --git a/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestTest.kt b/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestTest.kt
index 4a33f733..d2ddf680 100644
--- a/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestTest.kt
+++ b/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ChooserRequestTest.kt
@@ -29,7 +29,7 @@ import androidx.core.net.toUri
import androidx.core.os.bundleOf
import com.android.intentresolver.ContentTypeHint
import com.android.intentresolver.inject.FakeChooserServiceFlags
-import com.android.intentresolver.v2.ui.model.ActivityLaunch
+import com.android.intentresolver.v2.ui.model.ActivityModel
import com.android.intentresolver.v2.ui.model.ChooserRequest
import com.android.intentresolver.v2.validation.RequiredValueMissing
import com.android.intentresolver.v2.validation.ValidationResultSubject.Companion.assertThat
@@ -44,18 +44,18 @@ private const val EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI =
private const val EXTRA_CHOOSER_FOCUSED_ITEM_POSITION =
"android.intent.extra.CHOOSER_FOCUSED_ITEM_POSITION"
-private fun createLaunch(
+private fun createActivityModel(
targetIntent: Intent?,
referrer: Uri? = null,
additionalIntents: List<Intent>? = null
) =
- ActivityLaunch(
+ ActivityModel(
Intent(ACTION_CHOOSER).apply {
targetIntent?.also { putExtra(EXTRA_INTENT, it) }
additionalIntents?.also { putExtra(EXTRA_ALTERNATE_INTENTS, it.toTypedArray()) }
},
- fromUid = 10000,
- fromPackage = "com.android.example",
+ launchedFromUid = 10000,
+ launchedFromPackage = "com.android.example",
referrer = referrer ?: "android-app://com.android.example".toUri()
)
@@ -70,7 +70,7 @@ class ChooserRequestTest {
@Test
fun missingIntent() {
- val launch = createLaunch(targetIntent = null)
+ val launch = createActivityModel(targetIntent = null)
val result = readChooserRequest(launch, fakeChooserServiceFlags)
assertThat(result).value().isNull()
@@ -82,7 +82,7 @@ class ChooserRequestTest {
@Test
fun referrerFillIn() {
val referrer = Uri.parse("android-app://example.com")
- val launch = createLaunch(targetIntent = Intent(ACTION_SEND), referrer)
+ val launch = createActivityModel(targetIntent = Intent(ACTION_SEND), referrer)
launch.intent.putExtras(bundleOf(EXTRA_REFERRER to referrer))
val result = readChooserRequest(launch, fakeChooserServiceFlags)
@@ -97,7 +97,7 @@ class ChooserRequestTest {
val referrer = Uri.parse("http://example.com")
val intent = Intent().putExtras(bundleOf(EXTRA_INTENT to Intent(ACTION_SEND)))
- val launch = createLaunch(targetIntent = intent, referrer = referrer)
+ val launch = createActivityModel(targetIntent = intent, referrer = referrer)
val result = readChooserRequest(launch, fakeChooserServiceFlags)
@@ -107,7 +107,7 @@ class ChooserRequestTest {
@Test
fun referrerPackage_fromAppReferrer() {
val referrer = Uri.parse("android-app://example.com")
- val launch = createLaunch(targetIntent = Intent(ACTION_SEND), referrer)
+ val launch = createActivityModel(targetIntent = Intent(ACTION_SEND), referrer)
launch.intent.putExtras(bundleOf(EXTRA_REFERRER to referrer))
@@ -120,7 +120,7 @@ class ChooserRequestTest {
fun payloadIntents_includesTargetThenAdditional() {
val intent1 = Intent(ACTION_SEND)
val intent2 = Intent(ACTION_SEND_MULTIPLE)
- val launch = createLaunch(targetIntent = intent1, additionalIntents = listOf(intent2))
+ val launch = createActivityModel(targetIntent = intent1, additionalIntents = listOf(intent2))
val result = readChooserRequest(launch, fakeChooserServiceFlags)
assertThat(result.value?.payloadIntents).containsExactly(intent1, intent2)
@@ -129,12 +129,12 @@ class ChooserRequestTest {
@Test
fun testRequest_withOnlyRequiredValues() {
val intent = Intent().putExtras(bundleOf(EXTRA_INTENT to Intent(ACTION_SEND)))
- val launch = createLaunch(targetIntent = intent)
+ val launch = createActivityModel(targetIntent = intent)
val result = readChooserRequest(launch, fakeChooserServiceFlags)
assertThat(result).value().isNotNull()
val value: ChooserRequest = result.getOrThrow()
- assertThat(value.launchedFromPackage).isEqualTo(launch.fromPackage)
+ assertThat(value.launchedFromPackage).isEqualTo(launch.launchedFromPackage)
assertThat(result).findings().isEmpty()
}
@@ -144,7 +144,7 @@ class ChooserRequestTest {
val uri = Uri.parse("content://org.pkg/path")
val position = 10
val launch =
- createLaunch(targetIntent = Intent(ACTION_SEND)).apply {
+ createActivityModel(targetIntent = Intent(ACTION_SEND)).apply {
intent.putExtra(EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI, uri)
intent.putExtra(EXTRA_CHOOSER_FOCUSED_ITEM_POSITION, position)
}
@@ -163,7 +163,7 @@ class ChooserRequestTest {
val uri = Uri.parse("content://org.pkg/path")
val position = 10
val launch =
- createLaunch(targetIntent = Intent(ACTION_SEND)).apply {
+ createActivityModel(targetIntent = Intent(ACTION_SEND)).apply {
intent.putExtra(EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI, uri)
intent.putExtra(EXTRA_CHOOSER_FOCUSED_ITEM_POSITION, position)
}
@@ -180,7 +180,7 @@ class ChooserRequestTest {
fun testRequest_actionSendWithInvalidAdditionalContentUri() {
fakeChooserServiceFlags.setFlag(Flags.FLAG_CHOOSER_PAYLOAD_TOGGLING, true)
val launch =
- createLaunch(targetIntent = Intent(ACTION_SEND)).apply {
+ createActivityModel(targetIntent = Intent(ACTION_SEND)).apply {
intent.putExtra(EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI, "content://org.pkg/path")
intent.putExtra(EXTRA_CHOOSER_FOCUSED_ITEM_POSITION, "1")
}
@@ -195,7 +195,7 @@ class ChooserRequestTest {
@Test
fun testRequest_actionSendWithoutAdditionalContentUri() {
fakeChooserServiceFlags.setFlag(Flags.FLAG_CHOOSER_PAYLOAD_TOGGLING, true)
- val launch = createLaunch(targetIntent = Intent(ACTION_SEND))
+ val launch = createActivityModel(targetIntent = Intent(ACTION_SEND))
val result = readChooserRequest(launch, fakeChooserServiceFlags)
assertThat(result).value().isNotNull()
@@ -210,7 +210,7 @@ class ChooserRequestTest {
val uri = Uri.parse("content://org.pkg/path")
val position = 10
val launch =
- createLaunch(targetIntent = Intent(ACTION_VIEW)).apply {
+ createActivityModel(targetIntent = Intent(ACTION_VIEW)).apply {
intent.putExtra(EXTRA_CHOOSER_ADDITIONAL_CONTENT_URI, uri)
intent.putExtra(EXTRA_CHOOSER_FOCUSED_ITEM_POSITION, position)
}
@@ -226,7 +226,7 @@ class ChooserRequestTest {
@Test
fun testAlbumType() {
fakeChooserServiceFlags.setFlag(Flags.FLAG_CHOOSER_ALBUM_TEXT, true)
- val launch = createLaunch(Intent(ACTION_SEND))
+ val launch = createActivityModel(Intent(ACTION_SEND))
launch.intent.putExtra(
Intent.EXTRA_CHOOSER_CONTENT_TYPE_HINT,
Intent.CHOOSER_CONTENT_TYPE_ALBUM
@@ -245,7 +245,7 @@ class ChooserRequestTest {
fakeChooserServiceFlags.setFlag(Flags.FLAG_ENABLE_SHARESHEET_METADATA_EXTRA, false)
val metadataText: CharSequence = "Test metadata text"
val launch =
- createLaunch(targetIntent = Intent()).apply {
+ createActivityModel(targetIntent = Intent()).apply {
intent.putExtra(Intent.EXTRA_METADATA_TEXT, metadataText)
}
@@ -263,7 +263,7 @@ class ChooserRequestTest {
fakeChooserServiceFlags.setFlag(Flags.FLAG_ENABLE_SHARESHEET_METADATA_EXTRA, true)
val metadataText: CharSequence = "Test metadata text"
val launch =
- createLaunch(targetIntent = Intent()).apply {
+ createActivityModel(targetIntent = Intent()).apply {
intent.putExtra(Intent.EXTRA_METADATA_TEXT, metadataText)
}
diff --git a/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestTest.kt b/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestTest.kt
index e88c46f5..cc9b9a77 100644
--- a/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestTest.kt
+++ b/tests/unit/src/com/android/intentresolver/v2/ui/viewmodel/ResolverRequestTest.kt
@@ -23,7 +23,7 @@ import androidx.core.net.toUri
import androidx.core.os.bundleOf
import com.android.intentresolver.v2.ResolverActivity.PROFILE_WORK
import com.android.intentresolver.v2.shared.model.Profile.Type.WORK
-import com.android.intentresolver.v2.ui.model.ActivityLaunch
+import com.android.intentresolver.v2.ui.model.ActivityModel
import com.android.intentresolver.v2.ui.model.ResolverRequest
import com.android.intentresolver.v2.validation.UncaughtException
import com.android.intentresolver.v2.validation.ValidationResultSubject.Companion.assertThat
@@ -33,14 +33,14 @@ import org.junit.Test
private val targetUri = Uri.parse("content://example.com/123")
-private fun createLaunch(
+private fun createActivityModel(
targetIntent: Intent,
referrer: Uri? = null,
) =
- ActivityLaunch(
+ ActivityModel(
intent = targetIntent,
- fromUid = 10000,
- fromPackage = "com.android.example",
+ launchedFromUid = 10000,
+ launchedFromPackage = "com.android.example",
referrer = referrer ?: "android-app://com.android.example".toUri()
)
@@ -48,14 +48,14 @@ class ResolverRequestTest {
@Test
fun testDefaults() {
val intent = Intent(ACTION_VIEW).apply { data = targetUri }
- val launch = createLaunch(intent)
+ val activity = createActivityModel(intent)
- val result = readResolverRequest(launch)
+ val result = readResolverRequest(activity)
assertThat(result).isSuccess()
assertThat(result).findings().isEmpty()
val value: ResolverRequest = result.getOrThrow()
- assertThat(value.intent.filterEquals(launch.intent)).isTrue()
+ assertThat(value.intent.filterEquals(activity.intent)).isTrue()
assertThat(value.callingUser).isNull()
assertThat(value.selectedProfile).isNull()
}
@@ -68,9 +68,9 @@ class ResolverRequestTest {
putExtra(EXTRA_SELECTED_PROFILE, -1000)
}
- val launch = createLaunch(intent)
+ val activity = createActivityModel(intent)
- val result = readResolverRequest(launch)
+ val result = readResolverRequest(activity)
assertThat(result).isFailure()
assertWithMessage("the first finding")
@@ -85,9 +85,9 @@ class ResolverRequestTest {
Intent(Intent.ACTION_SEND).apply {
putParcelableArrayListExtra(Intent.EXTRA_ALTERNATE_INTENTS, arrayListOf(intent2))
}
- val launch = createLaunch(targetIntent = intent1)
+ val activity = createActivityModel(targetIntent = intent1)
- val result = readResolverRequest(launch)
+ val result = readResolverRequest(activity)
// Assert that payloadIntents does NOT include EXTRA_ALTERNATE_INTENTS
// that is only supported for Chooser and should be not be added here.
@@ -97,9 +97,9 @@ class ResolverRequestTest {
@Test
fun testAllValues() {
val intent = Intent(ACTION_VIEW).apply { data = Uri.parse("content://example.com/123") }
- val launch = createLaunch(targetIntent = intent)
+ val activity = createActivityModel(targetIntent = intent)
- launch.intent.putExtras(
+ activity.intent.putExtras(
bundleOf(
EXTRA_CALLING_USER to UserHandle.of(123),
EXTRA_SELECTED_PROFILE to PROFILE_WORK,
@@ -107,12 +107,12 @@ class ResolverRequestTest {
)
)
- val result = readResolverRequest(launch)
+ val result = readResolverRequest(activity)
assertThat(result).value().isNotNull()
val value: ResolverRequest = result.getOrThrow()
- assertThat(value.intent.filterEquals(launch.intent)).isTrue()
+ assertThat(value.intent.filterEquals(activity.intent)).isTrue()
assertThat(value.isAudioCaptureDevice).isTrue()
assertThat(value.callingUser).isEqualTo(UserHandle.of(123))
assertThat(value.selectedProfile).isEqualTo(WORK)