Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(349)

Unified Diff: cc/scheduler/scheduler_state_machine_unittest.cc

Issue 15058004: cc: Rename VSync to BeginFrame (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Rebase Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/scheduler/scheduler_state_machine.cc ('k') | cc/scheduler/scheduler_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 117c7788e54e9436fe3ac4ab7e0bb5890cc07de5..001a2298d09057932780e17b3628aec526185dd0 100644
--- a/cc/scheduler/scheduler_state_machine_unittest.cc
+++ b/cc/scheduler/scheduler_state_machine_unittest.cc
@@ -35,11 +35,10 @@ class StateMachine : public SchedulerStateMachine {
bool NeedsForcedRedraw() const { return needs_forced_redraw_; }
bool CanDraw() const { return can_draw_; }
- bool InsideVSync() const { return inside_vsync_; }
bool Visible() const { return visible_; }
};
-TEST(SchedulerStateMachineTest, TestNextActionBeginsFrameIfNeeded) {
+TEST(SchedulerStateMachineTest, TestNextActionBeginsMainFrameIfNeeded) {
SchedulerSettings default_scheduler_settings;
// If no commit needed, do nothing.
@@ -52,39 +51,39 @@ TEST(SchedulerStateMachineTest, TestNextActionBeginsFrameIfNeeded) {
state.SetNeedsRedraw(false);
state.SetVisible(true);
- EXPECT_FALSE(state.VSyncCallbackNeeded());
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- EXPECT_FALSE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
}
- // If commit requested but can_begin_frame is still false, do nothing.
+ // If commit requested but can_start is still false, do nothing.
{
StateMachine state(default_scheduler_settings);
state.SetCommitState(SchedulerStateMachine::COMMIT_STATE_IDLE);
state.SetNeedsRedraw(false);
state.SetVisible(true);
- EXPECT_FALSE(state.VSyncCallbackNeeded());
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- EXPECT_FALSE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
}
- // If commit requested, begin a frame.
+ // If commit requested, begin a main frame.
{
StateMachine state(default_scheduler_settings);
state.SetCommitState(SchedulerStateMachine::COMMIT_STATE_IDLE);
state.SetCanStart();
state.SetNeedsRedraw(false);
state.SetVisible(true);
- EXPECT_FALSE(state.VSyncCallbackNeeded());
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
}
// Begin the frame, make sure needs_commit and commit_state update correctly.
@@ -94,11 +93,12 @@ TEST(SchedulerStateMachineTest, TestNextActionBeginsFrameIfNeeded) {
state.UpdateState(state.NextAction());
state.DidCreateAndInitializeOutputSurface();
state.SetVisible(true);
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
EXPECT_FALSE(state.NeedsCommit());
- EXPECT_FALSE(state.VSyncCallbackNeeded());
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
}
}
@@ -108,7 +108,7 @@ TEST(SchedulerStateMachineTest, TestSetForcedRedrawDoesNotSetsNormalRedraw) {
state.SetCanDraw(true);
state.SetNeedsForcedRedraw();
EXPECT_FALSE(state.RedrawPending());
- EXPECT_TRUE(state.VSyncCallbackNeeded());
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
}
TEST(SchedulerStateMachineTest,
@@ -122,8 +122,8 @@ TEST(SchedulerStateMachineTest,
state.SetCanDraw(true);
state.SetNeedsRedraw();
EXPECT_TRUE(state.RedrawPending());
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
// We're drawing now.
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
@@ -134,8 +134,10 @@ TEST(SchedulerStateMachineTest,
// Failing the draw makes us require a commit.
state.DidDrawIfPossibleCompleted(false);
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_TRUE(state.RedrawPending());
EXPECT_TRUE(state.CommitPending());
}
@@ -152,8 +154,8 @@ TEST(SchedulerStateMachineTest,
state.SetCanDraw(true);
state.SetNeedsRedraw();
EXPECT_TRUE(state.RedrawPending());
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
// We're drawing now.
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
@@ -162,14 +164,15 @@ TEST(SchedulerStateMachineTest,
EXPECT_FALSE(state.RedrawPending());
EXPECT_FALSE(state.CommitPending());
- // While still in the same vsync callback, set needs redraw again.
- // This should not redraw.
+ // While still in the same begin frame callback on the main thread,
+ // set needs redraw again. This should not redraw.
state.SetNeedsRedraw();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Failing the draw makes us require a commit.
state.DidDrawIfPossibleCompleted(false);
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
EXPECT_TRUE(state.RedrawPending());
}
@@ -185,14 +188,16 @@ TEST(SchedulerStateMachineTest,
// Start a commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_TRUE(state.CommitPending());
// Then initiate a draw.
state.SetNeedsRedraw();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
EXPECT_TRUE(state.RedrawPending());
@@ -205,7 +210,7 @@ TEST(SchedulerStateMachineTest,
EXPECT_TRUE(state.CommitPending());
// Finish the commit.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_COMMIT);
EXPECT_TRUE(state.RedrawPending());
@@ -226,14 +231,16 @@ TEST(SchedulerStateMachineTest,
// Start a commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_TRUE(state.CommitPending());
// Then initiate a draw.
state.SetNeedsRedraw();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
EXPECT_TRUE(state.RedrawPending());
@@ -257,7 +264,7 @@ TEST(SchedulerStateMachineTest,
EXPECT_TRUE(state.CommitPending());
// Finish the commit.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_COMMIT);
EXPECT_TRUE(state.RedrawPending());
@@ -279,14 +286,16 @@ TEST(SchedulerStateMachineTest,
// Start a commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_TRUE(state.CommitPending());
// Then initiate a draw.
state.SetNeedsRedraw();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
EXPECT_TRUE(state.RedrawPending());
@@ -300,7 +309,7 @@ TEST(SchedulerStateMachineTest,
// Finish the commit. Note, we should not yet be forcing a draw, but should
// continue the commit as usual.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_COMMIT);
EXPECT_TRUE(state.RedrawPending());
@@ -309,7 +318,8 @@ TEST(SchedulerStateMachineTest,
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestFailedDrawIsRetriedNextVSync) {
+TEST(SchedulerStateMachineTest,
+ TestFailedDrawIsRetriedInNextBeginFrameForImplThread) {
SchedulerSettings default_scheduler_settings;
SchedulerStateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -320,8 +330,8 @@ TEST(SchedulerStateMachineTest, TestFailedDrawIsRetriedNextVSync) {
// Start a draw.
state.SetNeedsRedraw();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
EXPECT_TRUE(state.RedrawPending());
@@ -332,13 +342,14 @@ TEST(SchedulerStateMachineTest, TestFailedDrawIsRetriedNextVSync) {
EXPECT_TRUE(state.RedrawPending());
// We should not be trying to draw again now, but we have a commit pending.
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
- state.DidLeaveVSync();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ state.DidLeaveBeginFrame();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
- // We should try draw again in the next vsync.
+ // We should try to draw again in the next begin frame on the impl thread.
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
}
@@ -351,32 +362,33 @@ TEST(SchedulerStateMachineTest, TestDoestDrawTwiceInSameFrame) {
state.SetVisible(true);
state.SetCanDraw(true);
state.SetNeedsRedraw();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE);
- // While still in the same vsync callback, set needs redraw again.
- // This should not redraw.
+ // While still in the same begin frame for the impl thread, set needs redraw
+ // again. This should not redraw.
state.SetNeedsRedraw();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Move to another frame. This should now draw.
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
- state.DidEnterVSync();
+ state.DidLeaveBeginFrame();
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE);
state.DidDrawIfPossibleCompleted(true);
- EXPECT_FALSE(state.VSyncCallbackNeeded());
+ EXPECT_FALSE(state.BeginFrameNeededByImplThread());
}
-TEST(SchedulerStateMachineTest, TestNextActionDrawsOnVSync) {
+TEST(SchedulerStateMachineTest, TestNextActionDrawsOnBeginFrame) {
SchedulerSettings default_scheduler_settings;
- // When not on vsync, or on vsync but not visible, don't draw.
+ // When not in BeginFrame, or in BeginFrame but not visible,
+ // don't draw.
size_t num_commit_states =
sizeof(all_commit_states) / sizeof(SchedulerStateMachine::CommitState);
for (size_t i = 0; i < num_commit_states; ++i) {
@@ -388,7 +400,7 @@ TEST(SchedulerStateMachineTest, TestNextActionDrawsOnVSync) {
state.SetCommitState(all_commit_states[i]);
bool visible = j;
if (!visible) {
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
state.SetVisible(false);
} else {
state.SetVisible(true);
@@ -405,8 +417,9 @@ TEST(SchedulerStateMachineTest, TestNextActionDrawsOnVSync) {
}
}
- // When on vsync, or not on vsync but needs_forced_dedraw set, should always
- // draw except if you're ready to commit, in which case commit.
+ // When in BeginFrame, or not in BeginFrame but needs_forced_dedraw
+ // set, should always draw except if you're ready to commit, in which case
+ // commit.
for (size_t i = 0; i < num_commit_states; ++i) {
for (size_t j = 0; j < 2; ++j) {
StateMachine state(default_scheduler_settings);
@@ -417,7 +430,7 @@ TEST(SchedulerStateMachineTest, TestNextActionDrawsOnVSync) {
state.SetCommitState(all_commit_states[i]);
bool forced_draw = j;
if (!forced_draw) {
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
state.SetNeedsRedraw(true);
state.SetVisible(true);
} else {
@@ -435,12 +448,12 @@ TEST(SchedulerStateMachineTest, TestNextActionDrawsOnVSync) {
}
// Case 1: needs_commit=false.
- EXPECT_TRUE(state.VSyncCallbackNeeded());
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
EXPECT_EQ(expected_action, state.NextAction());
// Case 2: needs_commit=true.
state.SetNeedsCommit();
- EXPECT_TRUE(state.VSyncCallbackNeeded());
+ EXPECT_TRUE(state.BeginFrameNeededByImplThread());
EXPECT_EQ(expected_action, state.NextAction());
}
}
@@ -452,7 +465,7 @@ TEST(SchedulerStateMachineTest, TestNoCommitStatesRedrawWhenInvisible) {
size_t num_commit_states =
sizeof(all_commit_states) / sizeof(SchedulerStateMachine::CommitState);
for (size_t i = 0; i < num_commit_states; ++i) {
- // There shouldn't be any drawing regardless of vsync.
+ // There shouldn't be any drawing regardless of BeginFrame.
for (size_t j = 0; j < 2; ++j) {
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -463,7 +476,7 @@ TEST(SchedulerStateMachineTest, TestNoCommitStatesRedrawWhenInvisible) {
state.SetNeedsRedraw(true);
state.SetNeedsForcedRedraw(false);
if (j == 1)
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
// Case 1: needs_commit=false.
EXPECT_NE(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE,
@@ -483,7 +496,7 @@ TEST(SchedulerStateMachineTest, TestCanRedraw_StopsDraw) {
size_t num_commit_states =
sizeof(all_commit_states) / sizeof(SchedulerStateMachine::CommitState);
for (size_t i = 0; i < num_commit_states; ++i) {
- // There shouldn't be any drawing regardless of vsync.
+ // There shouldn't be any drawing regardless of BeginFrame.
for (size_t j = 0; j < 2; ++j) {
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -494,7 +507,7 @@ TEST(SchedulerStateMachineTest, TestCanRedraw_StopsDraw) {
state.SetNeedsRedraw(true);
state.SetNeedsForcedRedraw(false);
if (j == 1)
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
state.SetCanDraw(false);
EXPECT_NE(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE,
@@ -516,7 +529,8 @@ TEST(SchedulerStateMachineTest,
state.SetNeedsRedraw(true);
state.SetVisible(true);
state.SetCanDraw(false);
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
TEST(SchedulerStateMachineTest, TestsetNeedsCommitIsNotLost) {
@@ -530,7 +544,8 @@ TEST(SchedulerStateMachineTest, TestsetNeedsCommitIsNotLost) {
state.SetCanDraw(true);
// Begin the frame.
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
@@ -540,17 +555,17 @@ TEST(SchedulerStateMachineTest, TestsetNeedsCommitIsNotLost) {
EXPECT_TRUE(state.NeedsCommit());
// Let the frame finish.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
state.CommitState());
- // Expect to commit regardless of vsync state.
- state.DidLeaveVSync();
+ // Expect to commit regardless of BeginFrame state.
+ state.DidLeaveBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
- // Commit and make sure we draw on next vsync
+ // Commit and make sure we draw on next BeginFrame
state.UpdateState(SchedulerStateMachine::ACTION_COMMIT);
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_DRAW,
@@ -559,8 +574,9 @@ TEST(SchedulerStateMachineTest, TestsetNeedsCommitIsNotLost) {
state.DidDrawIfPossibleCompleted(true);
// Verify that another commit will begin.
- state.DidLeaveVSync();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ state.DidLeaveBeginFrame();
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
TEST(SchedulerStateMachineTest, TestFullCycle) {
@@ -574,17 +590,19 @@ TEST(SchedulerStateMachineTest, TestFullCycle) {
// Start clean and set commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
// Begin the frame.
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
EXPECT_FALSE(state.NeedsCommit());
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Tell the scheduler the frame finished.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
state.CommitState());
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
@@ -595,15 +613,15 @@ TEST(SchedulerStateMachineTest, TestFullCycle) {
state.CommitState());
EXPECT_TRUE(state.NeedsRedraw());
- // Expect to do nothing until vsync.
+ // Expect to do nothing until BeginFrame.
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- // At vsync, draw.
- state.DidEnterVSync();
+ // At BeginFrame, draw.
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE);
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
// Should be synchronized, no draw needed, no action needed.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
@@ -622,10 +640,12 @@ TEST(SchedulerStateMachineTest, TestFullCycleWithCommitRequestInbetween) {
// Start clean and set commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
// Begin the frame.
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
EXPECT_FALSE(state.NeedsCommit());
@@ -636,7 +656,7 @@ TEST(SchedulerStateMachineTest, TestFullCycleWithCommitRequestInbetween) {
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Tell the scheduler the frame finished.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
state.CommitState());
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
@@ -647,20 +667,21 @@ TEST(SchedulerStateMachineTest, TestFullCycleWithCommitRequestInbetween) {
state.CommitState());
EXPECT_TRUE(state.NeedsRedraw());
- // Expect to do nothing until vsync.
+ // Expect to do nothing until BeginFrame.
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- // At vsync, draw.
- state.DidEnterVSync();
+ // At BeginFrame, draw.
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE);
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
// Should be synchronized, no draw needed, no action needed.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
EXPECT_FALSE(state.NeedsRedraw());
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
TEST(SchedulerStateMachineTest, TestRequestCommitInvisible) {
@@ -673,7 +694,7 @@ TEST(SchedulerStateMachineTest, TestRequestCommitInvisible) {
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestGoesInvisibleBeforeBeginFrameCompletes) {
+TEST(SchedulerStateMachineTest, TestGoesInvisibleBeforeFinishCommit) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -684,18 +705,20 @@ TEST(SchedulerStateMachineTest, TestGoesInvisibleBeforeBeginFrameCompletes) {
// Start clean and set commit.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
// Begin the frame while visible.
- state.UpdateState(SchedulerStateMachine::ACTION_BEGIN_FRAME);
+ state.UpdateState(
+ SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD);
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
EXPECT_FALSE(state.NeedsCommit());
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- // Become invisible and abort the BeginFrame.
+ // Become invisible and abort the main thread's begin frame.
state.SetVisible(false);
- state.BeginFrameAborted();
+ state.BeginFrameAbortedByMainThread();
// We should now be back in the idle state as if we didn't start a frame at
// all.
@@ -707,7 +730,8 @@ TEST(SchedulerStateMachineTest, TestGoesInvisibleBeforeBeginFrameCompletes) {
// We should be beginning a frame now.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
// Begin the frame.
state.UpdateState(state.NextAction());
@@ -760,7 +784,8 @@ TEST(SchedulerStateMachineTest, TestContextLostWhenCompletelyIdle) {
state.DidCreateAndInitializeOutputSurface();
// When the context is recreated, we should begin a commit.
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
}
@@ -793,18 +818,19 @@ TEST(SchedulerStateMachineTest,
state.DidCreateAndInitializeOutputSurface();
// When the context is recreated, we should begin a commit
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
// Once the context is recreated, whether we draw should be based on
// SetCanDraw.
state.SetNeedsRedraw(true);
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.SetCanDraw(false);
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
state.SetCanDraw(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
}
TEST(SchedulerStateMachineTest, TestContextLostWhileCommitInProgress) {
@@ -818,17 +844,19 @@ TEST(SchedulerStateMachineTest, TestContextLostWhileCommitInProgress) {
// Get a commit in flight.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
// Set damage and expect a draw.
state.SetNeedsRedraw(true);
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
- // Cause a lost context while the begin frame is in flight.
+ // Cause a lost context while the begin frame is in flight
+ // for the main thread.
state.DidLoseOutputSurface();
// Ask for another draw. Expect nothing happens.
@@ -836,7 +864,7 @@ TEST(SchedulerStateMachineTest, TestContextLostWhileCommitInProgress) {
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Finish the frame, and commit.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(state.NextAction());
@@ -846,11 +874,12 @@ TEST(SchedulerStateMachineTest, TestContextLostWhileCommitInProgress) {
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(state.NextAction());
- // Expect to be told to begin context recreation, independent of vsync state.
- state.DidEnterVSync();
+ // Expect to be told to begin context recreation, independent of
+ // BeginFrame state.
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
state.NextAction());
}
@@ -867,17 +896,19 @@ TEST(SchedulerStateMachineTest,
// Get a commit in flight.
state.SetNeedsCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
// Set damage and expect a draw.
state.SetNeedsRedraw(true);
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
- // Cause a lost context while the begin frame is in flight.
+ // Cause a lost context while the begin frame is in flight
+ // for the main thread.
state.DidLoseOutputSurface();
// Ask for another draw and also set needs commit. Expect nothing happens.
@@ -886,7 +917,7 @@ TEST(SchedulerStateMachineTest,
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
// Finish the frame, and commit.
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(state.NextAction());
@@ -896,11 +927,12 @@ TEST(SchedulerStateMachineTest,
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE, state.NextAction());
state.UpdateState(state.NextAction());
- // Expect to be told to begin context recreation, independent of vsync state
- state.DidEnterVSync();
+ // Expect to be told to begin context recreation, independent of
+ // BeginFrame state
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
state.NextAction());
}
@@ -919,23 +951,24 @@ TEST(SchedulerStateMachineTest, TestFinishAllRenderingWhileContextLost) {
// Ask a forced redraw and verify it ocurrs.
state.SetNeedsForcedRedraw(true);
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
// Clear the forced redraw bit.
state.SetNeedsForcedRedraw(false);
- // Expect to be told to begin context recreation, independent of vsync state
+ // Expect to be told to begin context recreation, independent of
+ // BeginFrame state
EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_CREATION,
state.NextAction());
state.UpdateState(state.NextAction());
// Ask a forced redraw and verify it ocurrs.
state.SetNeedsForcedRedraw(true);
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
}
TEST(SchedulerStateMachineTest, DontDrawBeforeCommitAfterLostOutputSurface) {
@@ -957,10 +990,12 @@ TEST(SchedulerStateMachineTest, DontDrawBeforeCommitAfterLostOutputSurface) {
state.DidCreateAndInitializeOutputSurface();
EXPECT_FALSE(state.RedrawPending());
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestBeginFrameWhenInvisibleAndForceCommit) {
+TEST(SchedulerStateMachineTest,
+ TestSendBeginFrameToMainThreadWhenInvisibleAndForceCommit) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -969,24 +1004,23 @@ TEST(SchedulerStateMachineTest, TestBeginFrameWhenInvisibleAndForceCommit) {
state.SetVisible(false);
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
TEST(SchedulerStateMachineTest,
- TestBeginFrameWhenCanBeginFrameFalseAndForceCommit) {
+ TestSendBeginFrameToMainThreadWhenCanStartFalseAndForceCommit) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
- state.SetCanStart();
- state.UpdateState(state.NextAction());
- state.DidCreateAndInitializeOutputSurface();
state.SetVisible(true);
state.SetCanDraw(true);
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestBeginFrameWhenCommitInProgress) {
+TEST(SchedulerStateMachineTest, TestFinishCommitWhenCommitInProgress) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -996,7 +1030,7 @@ TEST(SchedulerStateMachineTest, TestBeginFrameWhenCommitInProgress) {
state.SetCommitState(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS);
state.SetNeedsCommit();
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(state.NextAction());
@@ -1006,7 +1040,7 @@ TEST(SchedulerStateMachineTest, TestBeginFrameWhenCommitInProgress) {
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestBeginFrameWhenForcedCommitInProgress) {
+TEST(SchedulerStateMachineTest, TestFinishCommitWhenForcedCommitInProgress) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1017,19 +1051,19 @@ TEST(SchedulerStateMachineTest, TestBeginFrameWhenForcedCommitInProgress) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
state.UpdateState(state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW,
state.CommitState());
- // If we are waiting for forced draw then we know a begin frame is already in
- // flight.
+ // If we are waiting for forced draw then we know a begin frame is already
+ // in flight for the main thread.
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestBeginFrameWhenContextLost) {
+TEST(SchedulerStateMachineTest, TestSendBeginFrameToMainThreadWhenContextLost) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1040,10 +1074,11 @@ TEST(SchedulerStateMachineTest, TestBeginFrameWhenContextLost) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
state.DidLoseOutputSurface();
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
}
-TEST(SchedulerStateMachineTest, TestImmediateBeginFrame) {
+TEST(SchedulerStateMachineTest, TestImmediateFinishCommit) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1056,7 +1091,7 @@ TEST(SchedulerStateMachineTest, TestImmediateBeginFrame) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
state.UpdateState(state.NextAction());
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
state.CommitState());
@@ -1065,20 +1100,20 @@ TEST(SchedulerStateMachineTest, TestImmediateBeginFrame) {
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW,
state.CommitState());
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
state.SetNeedsForcedRedraw(true);
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
state.UpdateState(state.NextAction());
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
- // Should be waiting for the normal begin frame.
+ // Should be waiting for the normal begin frame from the main thread.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState());
}
-TEST(SchedulerStateMachineTest, TestImmediateBeginFrameDuringCommit) {
+TEST(SchedulerStateMachineTest, TestImmediateFinishCommitDuringCommit) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1095,7 +1130,7 @@ TEST(SchedulerStateMachineTest, TestImmediateBeginFrameDuringCommit) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
state.UpdateState(state.NextAction());
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
state.CommitState());
@@ -1104,20 +1139,21 @@ TEST(SchedulerStateMachineTest, TestImmediateBeginFrameDuringCommit) {
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW,
state.CommitState());
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
state.SetNeedsForcedRedraw(true);
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
state.UpdateState(state.NextAction());
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
- // Should be waiting for the normal begin frame.
+ // Should be waiting for the normal begin frame from the main thread.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState()) << state.ToString();
}
-TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileInvisible) {
+TEST(SchedulerStateMachineTest,
+ ImmediateBeginFrameAbortedByMainThreadWhileInvisible) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1132,7 +1168,7 @@ TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileInvisible) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
state.UpdateState(state.NextAction());
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
@@ -1142,28 +1178,28 @@ TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileInvisible) {
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW,
state.CommitState());
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
state.SetNeedsForcedRedraw(true);
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
state.UpdateState(state.NextAction());
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
- // Should be waiting for the normal begin frame.
+ // Should be waiting for the main thread's begin frame.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_FRAME_IN_PROGRESS,
state.CommitState()) << state.ToString();
- // Become invisible and abort the "normal" begin frame.
+ // Become invisible and abort the main thread's begin frame.
state.SetVisible(false);
- state.BeginFrameAborted();
+ state.BeginFrameAbortedByMainThread();
// Should be back in the idle state, but needing a commit.
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_IDLE, state.CommitState());
EXPECT_TRUE(state.NeedsCommit());
}
-TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileCantDraw) {
+TEST(SchedulerStateMachineTest, ImmediateFinishCommitWhileCantDraw) {
SchedulerSettings default_scheduler_settings;
StateMachine state(default_scheduler_settings);
state.SetCanStart();
@@ -1178,7 +1214,7 @@ TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileCantDraw) {
state.SetNeedsCommit();
state.SetNeedsForcedCommit();
state.UpdateState(state.NextAction());
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_READY_TO_COMMIT,
@@ -1188,13 +1224,13 @@ TEST(SchedulerStateMachineTest, ImmediateBeginFrameWhileCantDraw) {
EXPECT_EQ(SchedulerStateMachine::COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW,
state.CommitState());
- state.DidEnterVSync();
+ state.DidEnterBeginFrame();
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
state.SetNeedsForcedRedraw(true);
EXPECT_EQ(SchedulerStateMachine::ACTION_DRAW_FORCED, state.NextAction());
state.UpdateState(state.NextAction());
state.DidDrawIfPossibleCompleted(true);
- state.DidLeaveVSync();
+ state.DidLeaveBeginFrame();
}
TEST(SchedulerStateMachineTest, ReportIfNotDrawing) {
@@ -1239,14 +1275,15 @@ TEST(SchedulerStateMachineTest, ReportIfNotDrawingFromAcquiredTextures) {
state.UpdateState(state.NextAction());
EXPECT_TRUE(state.DrawSuspendedUntilCommit());
- EXPECT_EQ(SchedulerStateMachine::ACTION_BEGIN_FRAME, state.NextAction());
+ EXPECT_EQ(SchedulerStateMachine::ACTION_SEND_BEGIN_FRAME_TO_MAIN_THREAD,
+ state.NextAction());
state.UpdateState(state.NextAction());
EXPECT_TRUE(state.DrawSuspendedUntilCommit());
EXPECT_EQ(SchedulerStateMachine::ACTION_NONE, state.NextAction());
- state.BeginFrameComplete();
+ state.FinishCommit();
EXPECT_TRUE(state.DrawSuspendedUntilCommit());
EXPECT_EQ(SchedulerStateMachine::ACTION_COMMIT, state.NextAction());
« no previous file with comments | « cc/scheduler/scheduler_state_machine.cc ('k') | cc/scheduler/scheduler_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698