Merge "Support fetching PackageInfo for archived apps" into main
This commit is contained in:
@@ -20,6 +20,8 @@ import android.app.ActivityManager
|
||||
import android.app.settings.SettingsEnums
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.content.pm.FakeFeatureFlagsImpl
|
||||
import android.content.pm.Flags
|
||||
import android.content.pm.PackageManager
|
||||
import androidx.test.core.app.ApplicationProvider
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
@@ -155,6 +157,41 @@ class PackageInfoPresenterTest {
|
||||
verifyAction(123)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun reloadPackageInfo_archivingDisabled() = runTest {
|
||||
coroutineScope {
|
||||
val fakeFeatureFlags = FakeFeatureFlagsImpl()
|
||||
fakeFeatureFlags.setFlag(Flags.FLAG_ARCHIVING, false)
|
||||
val packageInfoPresenter =
|
||||
PackageInfoPresenter(context, PACKAGE_NAME, USER_ID, this, packageManagers, fakeFeatureFlags)
|
||||
|
||||
packageInfoPresenter.reloadPackageInfo()
|
||||
}
|
||||
|
||||
val flags = PackageManager.MATCH_ANY_USER.toLong() or
|
||||
PackageManager.MATCH_DISABLED_COMPONENTS.toLong() or
|
||||
PackageManager.GET_PERMISSIONS.toLong()
|
||||
verify(packageManagers).getPackageInfoAsUser(PACKAGE_NAME, flags, USER_ID)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun reloadPackageInfo_archivingEnabled() = runTest {
|
||||
coroutineScope {
|
||||
val fakeFeatureFlags = FakeFeatureFlagsImpl()
|
||||
fakeFeatureFlags.setFlag(Flags.FLAG_ARCHIVING, true)
|
||||
val packageInfoPresenter =
|
||||
PackageInfoPresenter(context, PACKAGE_NAME, USER_ID, this, packageManagers, fakeFeatureFlags)
|
||||
|
||||
packageInfoPresenter.reloadPackageInfo()
|
||||
}
|
||||
|
||||
val flags = PackageManager.MATCH_ANY_USER.toLong() or
|
||||
PackageManager.MATCH_DISABLED_COMPONENTS.toLong() or
|
||||
PackageManager.GET_PERMISSIONS.toLong() or
|
||||
PackageManager.MATCH_ARCHIVED_PACKAGES
|
||||
verify(packageManagers).getPackageInfoAsUser(PACKAGE_NAME, flags, USER_ID)
|
||||
}
|
||||
|
||||
private fun verifyAction(category: Int) {
|
||||
verify(metricsFeatureProvider).action(context, category, PACKAGE_NAME)
|
||||
}
|
||||
|
Reference in New Issue
Block a user