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

Commit 3bda0b6f authored by Eric Jeong's avatar Eric Jeong Committed by Android (Google) Code Review
Browse files

Merge "Add test cases for multiple power group initialization"

parents d5d74548 286a29ba
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -6644,6 +6644,13 @@ public final class PowerManagerService extends SystemService
        }
    }

    @VisibleForTesting
    int getPowerGroupSize() {
        synchronized (mLock) {
            return mPowerGroups.size();
        }
    }

    @GoToSleepReason
    private int getLastSleepReasonInternal() {
        synchronized (mLock) {
+26 −0
Original line number Diff line number Diff line
@@ -78,6 +78,7 @@ import android.provider.Settings;
import android.service.dreams.DreamManagerInternal;
import android.sysprop.PowerProperties;
import android.test.mock.MockContentResolver;
import android.util.IntArray;
import android.view.Display;
import android.view.DisplayInfo;

@@ -2322,6 +2323,31 @@ public class PowerManagerServiceTest {
        verify(mLowPowerStandbyControllerMock).setActiveDuringMaintenance(false);
    }

    @Test
    public void testPowerGroupInitialization_multipleDisplayGroups() {
        IntArray displayGroupIds = IntArray.wrap(new int[]{1, 2, 3});
        when(mDisplayManagerInternalMock.getDisplayGroupIds()).thenReturn(displayGroupIds);

        createService();
        startSystem();

        // Power group for DEFAULT_DISPLAY_GROUP is added by default.
        assertThat(mService.getPowerGroupSize()).isEqualTo(4);
    }

    @Test
    public void testPowerGroupInitialization_multipleDisplayGroupsWithDefaultGroup() {
        IntArray displayGroupIds = IntArray.wrap(new int[]{Display.DEFAULT_DISPLAY_GROUP, 1, 2, 3});
        when(mDisplayManagerInternalMock.getDisplayGroupIds()).thenReturn(displayGroupIds);

        createService();
        startSystem();

        // Power group for DEFAULT_DISPLAY_GROUP is added once even if getDisplayGroupIds() return
        // an array including DEFAULT_DESIPLAY_GROUP.
        assertThat(mService.getPowerGroupSize()).isEqualTo(4);
    }

    private WakeLock acquireWakeLock(String tag, int flags) {
        IBinder token = new Binder();
        String packageName = "pkg.name";