Reset the dynamic set denylist after reboot the device
Reset the uids which are set into the POLICY_REJECT_METERED_BACKGROUND from the dynamic configured mechanism, rather than set by users manually, to avoid it still take effect after rebooting the device. Bug: 306329984 Test: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.fuelgauge" Change-Id: Idc0c21350cad7e48e6a5c7190565d5364236c2cd
This commit is contained in:
@@ -393,6 +393,27 @@ public class DynamicDenylistManagerTest {
|
||||
assertThat(dumpResults.contains("DynamicDenylist: null")).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onBootComplete_resetIntoManualMode() {
|
||||
initDynamicDenylistManager(new int[] {FAKE_UID_1_INT});
|
||||
setDenylist(new ArraySet<>(List.of(FAKE_UID_2_INT)));
|
||||
// Ensure the testing environment for manual denylist.
|
||||
assertThat(mManualDenyListPref.getAll()).hasSize(2);
|
||||
assertTrue(mManualDenyListPref.contains(PREF_KEY_MANUAL_DENYLIST_SYNCED));
|
||||
assertTrue(mManualDenyListPref.contains(FAKE_UID_1));
|
||||
// Ensure the testing environment for dynamic denylist.
|
||||
assertThat(mDynamicDenyListPref.getAll()).hasSize(1);
|
||||
|
||||
mDynamicDenylistManager.onBootComplete();
|
||||
|
||||
// Keep the users set uids in the manual denylist.
|
||||
assertThat(mManualDenyListPref.getAll()).hasSize(2);
|
||||
assertTrue(mManualDenyListPref.contains(PREF_KEY_MANUAL_DENYLIST_SYNCED));
|
||||
assertTrue(mManualDenyListPref.contains(FAKE_UID_1));
|
||||
// Clear the uids in the dynamic denylist.
|
||||
assertThat(mDynamicDenyListPref.getAll()).isEmpty();
|
||||
}
|
||||
|
||||
private void initDynamicDenylistManager(int[] preload) {
|
||||
initDynamicDenylistManager(preload, preload);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user