diff options
| author | 2024-02-05 15:40:30 -0800 | |
|---|---|---|
| committer | 2024-03-15 21:42:15 +0000 | |
| commit | 3f17b539c301a1b1af0704d6824d635c6b4f3532 (patch) | |
| tree | c435065aa23d56d02db4d7aa725800367ac33c21 | |
| parent | 29ed1f503f56b002be6444018bd0523b6de5d60f (diff) | |
add unit tests for screen-on blocker when change screen state
Test: atest DisplayServiceTests:DisplayPowerControllerTest
Bug: 316941732
Change-Id: I1f3cf3e859e3ceb0b94ccf40c781513539b93f6d
| -rw-r--r-- | services/tests/displayservicetests/src/com/android/server/display/DisplayPowerControllerTest.java | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/services/tests/displayservicetests/src/com/android/server/display/DisplayPowerControllerTest.java b/services/tests/displayservicetests/src/com/android/server/display/DisplayPowerControllerTest.java index fb2321316e00..d53ad7d2cb4a 100644 --- a/services/tests/displayservicetests/src/com/android/server/display/DisplayPowerControllerTest.java +++ b/services/tests/displayservicetests/src/com/android/server/display/DisplayPowerControllerTest.java @@ -1546,6 +1546,47 @@ public final class DisplayPowerControllerTest { } @Test + public void testOffloadBlocker_turnON_screenOnBlocked() { + // set up. + int initState = Display.STATE_OFF; + mHolder = createDisplayPowerController(DISPLAY_ID, UNIQUE_ID); + mHolder.dpc.setDisplayOffloadSession(mDisplayOffloadSession); + // start with OFF. + when(mHolder.displayPowerState.getScreenState()).thenReturn(initState); + DisplayPowerRequest dpr = new DisplayPowerRequest(); + dpr.policy = DisplayPowerRequest.POLICY_OFF; + mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); + advanceTime(1); // Run updatePowerState + + // go to ON. + dpr.policy = DisplayPowerRequest.POLICY_BRIGHT; + mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); + advanceTime(1); // Run updatePowerState + + verify(mDisplayOffloadSession).blockScreenOn(any(Runnable.class)); + } + + @Test + public void testOffloadBlocker_turnOFF_screenOnNotBlocked() { + // set up. + int initState = Display.STATE_ON; + mHolder.dpc.setDisplayOffloadSession(mDisplayOffloadSession); + // start with ON. + when(mHolder.displayPowerState.getScreenState()).thenReturn(initState); + DisplayPowerRequest dpr = new DisplayPowerRequest(); + dpr.policy = DisplayPowerRequest.POLICY_BRIGHT; + mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); + advanceTime(1); // Run updatePowerState + + // go to OFF. + dpr.policy = DisplayPowerRequest.POLICY_OFF; + mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); + advanceTime(1); // Run updatePowerState + + verify(mDisplayOffloadSession, never()).blockScreenOn(any(Runnable.class)); + } + + @Test public void testBrightnessFromOffload() { when(mDisplayManagerFlagsMock.isDisplayOffloadEnabled()).thenReturn(true); mHolder = createDisplayPowerController(DISPLAY_ID, UNIQUE_ID); |