Fix Settings crash in Storage settings.

If you tap aggressively before the fragment has fully initialized, it
was possible to NPE. This null-checks to avoid this.

Change-Id: I3488245d230cf1e16b23e34614c8e6b43ea14ff1
Fixes: 37945253
Test: Robotest
This commit is contained in:
Daniel Nishi
2017-05-03 13:36:36 -07:00
parent 833927929e
commit 8381755263
2 changed files with 24 additions and 0 deletions

View File

@@ -146,6 +146,14 @@ public class StorageItemPreferenceControllerTest {
ManageApplications.STORAGE_TYPE_MUSIC);
}
@Test
public void handlePreferenceTreeClick_tappingAudioWhileUninitializedDoesntCrash() {
mController.setVolume(null);
mPreference.setKey("pref_music_audio");
mController.handlePreferenceTreeClick(mPreference);
}
@Test
public void testClickApps() {
mPreference.setKey("pref_other_apps");
@@ -164,6 +172,14 @@ public class StorageItemPreferenceControllerTest {
.isEqualTo(R.string.apps_storage);
}
@Test
public void handlePreferenceTreeClick_tappingAppsWhileUninitializedDoesntCrash() {
mController.setVolume(null);
mPreference.setKey("pref_other_apps");
mController.handlePreferenceTreeClick(mPreference);
}
@Test
public void testClickFiles() {
when(mSvp.findEmulatedForPrivate(any(VolumeInfo.class))).thenReturn(mVolume);