Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a1c50f6 authored by Raff Tsai's avatar Raff Tsai Committed by Android (Google) Code Review
Browse files

Merge "Fix crash after uninstalling app"

parents eaddedae 790a8225
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.applications.AppStorageSettings;
import com.android.settings.applications.FetchPackageStorageAsyncLoader;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.StorageStatsSource;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
@@ -48,10 +49,13 @@ public class AppStoragePreferenceController extends AppInfoPreferenceControllerB

    @Override
    public void updateState(Preference preference) {
        final ApplicationsState.AppEntry entry = mParent.getAppEntry();
        if (entry != null && entry.info != null) {
            final boolean isExternal =
                (mParent.getAppEntry().info.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0;
                    (entry.info.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0;
            preference.setSummary(getStorageSummary(mLastResult, isExternal));
        }
    }

    @Override
    public void onResume() {
+11 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -99,6 +100,16 @@ public class AppStoragePreferenceControllerTest {
        verify(preference).setSummary(any());
    }

    @Test
    public void updateState_entryIsNull_shouldNotUpdatePreferenceSummary() {
        when(mFragment.getAppEntry()).thenReturn(null);
        Preference preference = mock(Preference.class);

        mController.updateState(preference);

        verify(preference, never()).setSummary(any());
    }

    @Test
    public void getStorageSummary_shouldWorkForExternal() {
        final StorageStatsSource.AppStorageStats stats =