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

Commit 34a752d4 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fixed getUidsWithPolicy()."

parents 328446eb 6f51a0af
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1809,7 +1809,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
            for (int i = 0; i < mUidPolicy.size(); i++) {
                final int uid = mUidPolicy.keyAt(i);
                final int uidPolicy = mUidPolicy.valueAt(i);
                if (uidPolicy == policy) {
                if ((policy == POLICY_NONE && uidPolicy == POLICY_NONE) ||
                        (uidPolicy & policy) != 0) {
                    uids = appendInt(uids, uid);
                }
            }
+9 −0
Original line number Diff line number Diff line
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<policy-list version="10">
  <uid-policy uid="10004" policy="0" />
  <uid-policy uid="10008" policy="1" />
  <uid-policy uid="10015" policy="2" />
  <uid-policy uid="10016" policy="3" />
  <uid-policy uid="10023" policy="4" />
  <uid-policy uid="10042" policy="6" />
</policy-list>
+14 −1
Original line number Diff line number Diff line
@@ -160,7 +160,6 @@ public class NetworkPolicyManagerServiceTest {
     */
    private String mNetpolicyXml;


    private @Mock IActivityManager mActivityManager;
    private @Mock INetworkStatsService mStatsService;
    private @Mock INetworkManagementService mNetworkManager;
@@ -350,6 +349,20 @@ public class NetworkPolicyManagerServiceTest {
        assertUidPolicy(UID_D, POLICY_ALLOW_METERED_BACKGROUND);
    }

    @Test
    @NetPolicyXml("uids-with-mixed-policies.xml")
    public void testGetUidsWithPolicy() throws Exception {
        assertContainsInAnyOrder(mService.getUidsWithPolicy(POLICY_NONE),
                UID_A);
        assertContainsInAnyOrder(mService.getUidsWithPolicy(POLICY_REJECT_METERED_BACKGROUND),
                UID_B, UID_D);
        assertContainsInAnyOrder(mService.getUidsWithPolicy(POLICY_ALLOW_METERED_BACKGROUND),
                UID_E, UID_F);
        // Legacy (POLICY_ALLOW_BACKGROUND_BATTERY_SAVE)
        assertContainsInAnyOrder(mService.getUidsWithPolicy(2),
                UID_C, UID_D, UID_F);
    }

    // NOTE: testPolicyChangeTriggersListener() and testUidForeground() are too superficial, they
    // don't check for side-effects (like calls to NetworkManagementService) neither cover all
    // different modes (Data Saver, Battery Saver, Doze, App idle, etc...).