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 9d151d5faef986549262cc70c47acf79ca271443..ca0e4410ecb86d3694737f79436e8880ba26c9b2 100644 |
--- a/cc/scheduler/scheduler_state_machine_unittest.cc |
+++ b/cc/scheduler/scheduler_state_machine_unittest.cc |
@@ -1813,5 +1813,28 @@ TEST(SchedulerStateMachineTest, TestForwardBeginFramesToChildren) { |
EXPECT_TRUE(state.BeginFrameNeeded()); |
} |
+TEST(SchedulerStateMachineTest, TestDeferCommit) { |
+ SchedulerSettings settings; |
+ StateMachine state(settings); |
+ SET_UP_STATE(state) |
+ |
+ state.SetDeferCommits(true); |
+ |
+ state.SetNeedsCommit(); |
+ EXPECT_TRUE(state.BeginFrameNeeded()); |
+ EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE); |
+ |
+ state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE)); |
+ EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE); |
+ |
+ state.OnBeginImplFrameDeadline(); |
+ EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_NONE); |
+ |
+ state.SetDeferCommits(false); |
+ state.OnBeginImplFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE)); |
+ EXPECT_ACTION_UPDATE_STATE( |
+ SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME); |
+} |
+ |
} // namespace |
} // namespace cc |