Merge "FactoryResetPreferenceController return null when permission isn't grandted." into main

This commit is contained in:
Treehugger Robot
2025-02-24 14:29:36 -08:00
committed by Android (Google) Code Review
2 changed files with 19 additions and 1 deletions

View File

@@ -111,7 +111,7 @@ public class FactoryResetPreferenceController extends BasePreferenceController {
return prepareFactoryResetWizardRequest; return prepareFactoryResetWizardRequest;
} }
} }
return prepareFactoryResetWizardRequest; return null;
} }
Log.i(TAG, "Unable to resolve a Factory Reset Handler Activity"); Log.i(TAG, "Unable to resolve a Factory Reset Handler Activity");
return null; return null;

View File

@@ -22,6 +22,7 @@ import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
import android.Manifest; import android.Manifest;
@@ -157,4 +158,21 @@ public class FactoryResetPreferenceControllerTest {
assertThat(intentArgumentCaptor.getValue().getAction()) assertThat(intentArgumentCaptor.getValue().getAction())
.isEqualTo(FactoryResetPreferenceController.ACTION_PREPARE_FACTORY_RESET); .isEqualTo(FactoryResetPreferenceController.ACTION_PREPARE_FACTORY_RESET);
} }
@Test
@RequiresFlagsEnabled(com.android.settings.factory_reset.Flags.FLAG_ENABLE_FACTORY_RESET_WIZARD)
public void handlePreference_factoryResetWizardEnabled_noExistingFrwApp()
throws PackageManager.NameNotFoundException {
PackageInfo info = new PackageInfo();
info.requestedPermissions =
new String[] {Manifest.permission.PREPARE_FACTORY_RESET};
info.requestedPermissionsFlags = new int[] {0};
when(mPackageManager.getPackageInfo(anyString(), anyInt()))
.thenReturn(info);
assertThat(mController.handlePreferenceTreeClick(mPreference)).isTrue();
verify(mPackageManager).getPackageInfo(eq(FACTORY_RESET_APP_PACKAGE),
eq(PackageManager.GET_PERMISSIONS));
verifyNoMoreInteractions(mFactoryResetLauncher);
}
} }