Doze: Fix WakeLock bug
Change-Id: I3d687bbf82173723c420058867531a970d1f46cb Fixes: 32857549 Test: runtest -x $(gettop)/frameworks/base/packages/SystemUI/tests/src/com/android/systemui/doze/DozeMachineTest.java
This commit is contained in:
@@ -225,8 +225,10 @@ public class DozeMachine {
|
||||
boolean newPolicy = wakeLockPolicy(newState);
|
||||
if (mWakeLockHeldForCurrentState && !newPolicy) {
|
||||
mWakeLock.release();
|
||||
mWakeLockHeldForCurrentState = false;
|
||||
} else if (!mWakeLockHeldForCurrentState && newPolicy) {
|
||||
mWakeLock.acquire();
|
||||
mWakeLockHeldForCurrentState = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -187,6 +187,19 @@ public class DozeMachineTest {
|
||||
assertFalse(mWakeLockFake.isHeld());
|
||||
}
|
||||
|
||||
@Test
|
||||
@UiThreadTest
|
||||
public void testWakeLock_releasedAfterPulse() {
|
||||
mMachine.requestState(INITIALIZED);
|
||||
|
||||
mMachine.requestState(DOZE);
|
||||
mMachine.requestState(DOZE_REQUEST_PULSE);
|
||||
mMachine.requestState(DOZE_PULSING);
|
||||
mMachine.requestState(DOZE_PULSE_DONE);
|
||||
|
||||
assertFalse(mWakeLockFake.isHeld());
|
||||
}
|
||||
|
||||
@Test
|
||||
@UiThreadTest
|
||||
public void testScreen_offInDoze() {
|
||||
|
||||
Reference in New Issue
Block a user