Merge "Doze: Fix WakeLock bug"
This commit is contained in:
committed by
Android (Google) Code Review
commit
8068bfeae2
@@ -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