Fixes crash from selecting uninstalled app info from recents.
- when the package is uninstalled, also remove it from the recent tasks - move retrieveAppEntry() from onCreate() to getPreferenceControllers() so that if the package info is invalid, do not create any controllers, as the activity will be finished anyway. Change-Id: Ibbfa16e3d1f941a0a200e78ec73a06ca8511f82b Fixes: 72656345 Test: make RunSettingsRoboTests
This commit is contained in:
@@ -19,6 +19,7 @@ package com.android.settings.applications.appinfo;
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.nullable;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.never;
|
||||
@@ -190,6 +191,22 @@ public final class AppInfoDashboardFragmentTest {
|
||||
verify(mActivity).invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onActivityResult_packageUninstalled_shouldFinishAndRemoveTask() {
|
||||
doReturn(false).when(mFragment).refreshUi();
|
||||
|
||||
mFragment.onActivityResult(mFragment.REQUEST_UNINSTALL, 0, mock(Intent.class));
|
||||
|
||||
verify(mActivity).finishAndRemoveTask();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPreferenceControllers_noPackageInfo_shouldReturnNull() {
|
||||
doNothing().when(mFragment).retrieveAppEntry();
|
||||
|
||||
assertThat(mFragment.getPreferenceControllers(mShadowContext)).isNull();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getNumberOfUserWithPackageInstalled_twoUsersInstalled_shouldReturnTwo()
|
||||
throws PackageManager.NameNotFoundException{
|
||||
|
||||
Reference in New Issue
Block a user