| Index: cc/scheduler/scheduler_state_machine_unittest.cc
|
| diff --git a/cc/scheduler/scheduler_state_machine_unittest.cc b/cc/scheduler/scheduler_state_machine_unittest.cc
|
| index fc82fb6ecedf431b67a84b1351ea3c6152f51cb8..e3530c877f4cb68bbf793217225dcc1fe3b4bf24 100644
|
| --- a/cc/scheduler/scheduler_state_machine_unittest.cc
|
| +++ b/cc/scheduler/scheduler_state_machine_unittest.cc
|
| @@ -1761,6 +1761,39 @@ TEST(SchedulerStateMachineTest, TestAnimateBeforeCommit) {
|
| SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE);
|
| }
|
|
|
| +TEST(SchedulerStateMachineTest, TestAnimateAfterCommitBeforeDraw) {
|
| + SchedulerSettings settings;
|
| + settings.impl_side_painting = true;
|
| + StateMachine state(settings);
|
| + state.SetCanStart();
|
| + state.UpdateState(state.NextAction());
|
| + state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
|
| + state.SetVisible(true);
|
| + state.SetCanDraw(true);
|
| +
|
| + // Check that animations are updated before we start a commit.
|
| + state.SetNeedsAnimate();
|
| + EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
|
| + state.SetNeedsCommit();
|
| + EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE);
|
| + EXPECT_TRUE(state.BeginFrameNeeded());
|
| +
|
| + state.OnBeginImplFrame(CreateBeginFrameArgsForTesting());
|
| + EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
|
| + EXPECT_ACTION_UPDATE_STATE(
|
| + SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
|
| +
|
| + state.NotifyBeginMainFrameStarted();
|
| + state.NotifyReadyToCommit();
|
| + EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_COMMIT);
|
| +
|
| + state.OnBeginImplFrameDeadlinePending();
|
| + state.OnBeginImplFrameDeadline();
|
| + EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_ANIMATE);
|
| + EXPECT_ACTION_UPDATE_STATE(
|
| + SchedulerStateMachine::ACTION_DRAW_AND_SWAP_IF_POSSIBLE);
|
| +}
|
| +
|
| TEST(SchedulerStateMachineTest, TestSetNeedsAnimateAfterAnimate) {
|
| SchedulerSettings settings;
|
| settings.impl_side_painting = true;
|
|
|