Loading src/com/android/settings/applications/SpecialAppAccessPreferenceController.java +3 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settings.datausage.AppStateDataUsageBridge; import com.android.settings.datausage.AppStateDataUsageBridge.DataUsageState; import com.android.settings.datausage.DataSaverBackend; import com.android.settingslib.applications.ApplicationsState; import com.android.settingslib.core.lifecycle.Lifecycle; Loading Loading @@ -108,8 +109,8 @@ public class SpecialAppAccessPreferenceController extends BasePreferenceControll if (!ApplicationsState.FILTER_DOWNLOADED_AND_LAUNCHER.filterApp(entry)) { continue; } if (entry.extraInfo != null && ((AppStateDataUsageBridge.DataUsageState) entry.extraInfo).isDataSaverWhitelisted) { if (entry.extraInfo instanceof DataUsageState && ((DataUsageState) entry.extraInfo).isDataSaverWhitelisted) { count++; } } Loading tests/robotests/src/com/android/settings/applications/SpecialAppAccessPreferenceControllerTest.java +18 −0 Original line number Diff line number Diff line Loading @@ -94,4 +94,22 @@ public class SpecialAppAccessPreferenceControllerTest { .isEqualTo(mContext.getResources().getQuantityString( R.plurals.special_access_summary, 1, 1)); } @Test public void updateState_wrongExtraInfo_shouldNotIncludeInSummary() { final ArrayList<ApplicationsState.AppEntry> apps = new ArrayList<>(); final ApplicationsState.AppEntry entry = mock(ApplicationsState.AppEntry.class); entry.hasLauncherEntry = true; entry.info = new ApplicationInfo(); entry.extraInfo = new AppStateNotificationBridge.NotificationsSentState(); apps.add(entry); when(mSession.getAllApps()).thenReturn(apps); mController.displayPreference(mScreen); mController.onExtraInfoUpdated(); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getResources().getQuantityString( R.plurals.special_access_summary, 0, 0)); } } Loading
src/com/android/settings/applications/SpecialAppAccessPreferenceController.java +3 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settings.datausage.AppStateDataUsageBridge; import com.android.settings.datausage.AppStateDataUsageBridge.DataUsageState; import com.android.settings.datausage.DataSaverBackend; import com.android.settingslib.applications.ApplicationsState; import com.android.settingslib.core.lifecycle.Lifecycle; Loading Loading @@ -108,8 +109,8 @@ public class SpecialAppAccessPreferenceController extends BasePreferenceControll if (!ApplicationsState.FILTER_DOWNLOADED_AND_LAUNCHER.filterApp(entry)) { continue; } if (entry.extraInfo != null && ((AppStateDataUsageBridge.DataUsageState) entry.extraInfo).isDataSaverWhitelisted) { if (entry.extraInfo instanceof DataUsageState && ((DataUsageState) entry.extraInfo).isDataSaverWhitelisted) { count++; } } Loading
tests/robotests/src/com/android/settings/applications/SpecialAppAccessPreferenceControllerTest.java +18 −0 Original line number Diff line number Diff line Loading @@ -94,4 +94,22 @@ public class SpecialAppAccessPreferenceControllerTest { .isEqualTo(mContext.getResources().getQuantityString( R.plurals.special_access_summary, 1, 1)); } @Test public void updateState_wrongExtraInfo_shouldNotIncludeInSummary() { final ArrayList<ApplicationsState.AppEntry> apps = new ArrayList<>(); final ApplicationsState.AppEntry entry = mock(ApplicationsState.AppEntry.class); entry.hasLauncherEntry = true; entry.info = new ApplicationInfo(); entry.extraInfo = new AppStateNotificationBridge.NotificationsSentState(); apps.add(entry); when(mSession.getAllApps()).thenReturn(apps); mController.displayPreference(mScreen); mController.onExtraInfoUpdated(); assertThat(mPreference.getSummary()) .isEqualTo(mContext.getResources().getQuantityString( R.plurals.special_access_summary, 0, 0)); } }