Merge "Fix NPE in InstantAppButtonsPreferenceController"

This commit is contained in:
TreeHugger Robot
2018-02-23 06:53:32 +00:00
committed by Android (Google) Code Review
2 changed files with 13 additions and 3 deletions

View File

@@ -112,11 +112,12 @@ public class InstantAppButtonsPreferenceController extends BasePreferenceControl
@Override
public void onPrepareOptionsMenu(Menu menu) {
mInstallMenu = menu.findItem(AppInfoDashboardFragment.INSTALL_INSTANT_APP_MENU);
final Intent appStoreIntent = AppStoreUtil.getAppStoreLink(mContext, mPackageName);
if (appStoreIntent == null) {
if (mInstallMenu != null) {
if (AppStoreUtil.getAppStoreLink(mContext, mPackageName) == null) {
mInstallMenu.setEnabled(false);
}
}
}
@Override
public void onClick(DialogInterface dialog, int which) {

View File

@@ -179,6 +179,15 @@ public class InstantAppButtonsPreferenceControllerTest {
verify(menuItem, never()).setEnabled(false);
}
@Test
public void onPrepareOptionsMenu_installMenuNotFound_shoulNotCrash() {
final Menu menu = mock(Menu.class);
mController.onPrepareOptionsMenu(menu);
// no crash
}
@Test
public void onOptionsItemSelected_shouldOpenAppStore() {
final ResolveInfo resolveInfo = mock(ResolveInfo.class);