Loading src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java +14 −11 Original line number Diff line number Diff line Loading @@ -162,13 +162,12 @@ public class AppInfoDashboardFragment extends DashboardFragment mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mPm = activity.getPackageManager(); retrieveAppEntry(); startListeningToPackageRemove(); if (!ensurePackageInfoAvailable(activity)) { return; } startListeningToPackageRemove(); mForceStopOptionsMenuController = new ForceStopOptionsMenuController(activity, this /* parent */, mDpm, mMetricsFeatureProvider, getLifecycle()); Loading Loading @@ -205,6 +204,10 @@ public class AppInfoDashboardFragment extends DashboardFragment @Override protected List<AbstractPreferenceController> getPreferenceControllers(Context context) { retrieveAppEntry(); if (mPackageInfo == null) { return null; } final String packageName = getPackageName(); final List<AbstractPreferenceController> controllers = new ArrayList<>(); final Lifecycle lifecycle = getLifecycle(); Loading Loading @@ -262,9 +265,6 @@ public class AppInfoDashboardFragment extends DashboardFragment } ApplicationsState.AppEntry getAppEntry() { if (mAppEntry == null) { retrieveAppEntry(); } return mAppEntry; } Loading @@ -273,9 +273,6 @@ public class AppInfoDashboardFragment extends DashboardFragment } PackageInfo getPackageInfo() { if (mAppEntry == null) { retrieveAppEntry(); } return mPackageInfo; } Loading Loading @@ -361,7 +358,12 @@ public class AppInfoDashboardFragment extends DashboardFragment PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER) .execute((Object) null); } // continue with following operations if (!refreshUi()) { onPackageRemoved(); } else { startListeningToPackageRemove(); } break; case REQUEST_REMOVE_DEVICE_ADMIN: if (!refreshUi()) { setIntentAndFinish(true, true); Loading Loading @@ -622,7 +624,8 @@ public class AppInfoDashboardFragment extends DashboardFragment return mPackageName; } private void retrieveAppEntry() { @VisibleForTesting void retrieveAppEntry() { final Activity activity = getActivity(); if (activity == null) { return; Loading tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java +17 −0 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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{ Loading Loading
src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java +14 −11 Original line number Diff line number Diff line Loading @@ -162,13 +162,12 @@ public class AppInfoDashboardFragment extends DashboardFragment mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mPm = activity.getPackageManager(); retrieveAppEntry(); startListeningToPackageRemove(); if (!ensurePackageInfoAvailable(activity)) { return; } startListeningToPackageRemove(); mForceStopOptionsMenuController = new ForceStopOptionsMenuController(activity, this /* parent */, mDpm, mMetricsFeatureProvider, getLifecycle()); Loading Loading @@ -205,6 +204,10 @@ public class AppInfoDashboardFragment extends DashboardFragment @Override protected List<AbstractPreferenceController> getPreferenceControllers(Context context) { retrieveAppEntry(); if (mPackageInfo == null) { return null; } final String packageName = getPackageName(); final List<AbstractPreferenceController> controllers = new ArrayList<>(); final Lifecycle lifecycle = getLifecycle(); Loading Loading @@ -262,9 +265,6 @@ public class AppInfoDashboardFragment extends DashboardFragment } ApplicationsState.AppEntry getAppEntry() { if (mAppEntry == null) { retrieveAppEntry(); } return mAppEntry; } Loading @@ -273,9 +273,6 @@ public class AppInfoDashboardFragment extends DashboardFragment } PackageInfo getPackageInfo() { if (mAppEntry == null) { retrieveAppEntry(); } return mPackageInfo; } Loading Loading @@ -361,7 +358,12 @@ public class AppInfoDashboardFragment extends DashboardFragment PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER) .execute((Object) null); } // continue with following operations if (!refreshUi()) { onPackageRemoved(); } else { startListeningToPackageRemove(); } break; case REQUEST_REMOVE_DEVICE_ADMIN: if (!refreshUi()) { setIntentAndFinish(true, true); Loading Loading @@ -622,7 +624,8 @@ public class AppInfoDashboardFragment extends DashboardFragment return mPackageName; } private void retrieveAppEntry() { @VisibleForTesting void retrieveAppEntry() { final Activity activity = getActivity(); if (activity == null) { return; Loading
tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java +17 −0 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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{ Loading