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

Side by Side Diff: third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler_unittest.cc

Issue 2967013002: Be explicit about namespace testing to not mix it with blink::testing (Closed)
Patch Set: Dropped mojo parts that need another review. Created 3 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "platform/scheduler/renderer/webthread_impl_for_renderer_scheduler.h" 5 #include "platform/scheduler/renderer/webthread_impl_for_renderer_scheduler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 21 matching lines...) Expand all
32 MOCK_METHOD0(Run, void()); 32 MOCK_METHOD0(Run, void());
33 }; 33 };
34 34
35 class MockTaskObserver : public blink::WebThread::TaskObserver { 35 class MockTaskObserver : public blink::WebThread::TaskObserver {
36 public: 36 public:
37 MOCK_METHOD0(WillProcessTask, void()); 37 MOCK_METHOD0(WillProcessTask, void());
38 MOCK_METHOD0(DidProcessTask, void()); 38 MOCK_METHOD0(DidProcessTask, void());
39 }; 39 };
40 } // namespace 40 } // namespace
41 41
42 class WebThreadImplForRendererSchedulerTest : public testing::Test { 42 class WebThreadImplForRendererSchedulerTest : public ::testing::Test {
43 public: 43 public:
44 WebThreadImplForRendererSchedulerTest() {} 44 WebThreadImplForRendererSchedulerTest() {}
45 45
46 void SetUp() override { 46 void SetUp() override {
47 clock_.reset(new base::SimpleTestTickClock()); 47 clock_.reset(new base::SimpleTestTickClock());
48 clock_->Advance(base::TimeDelta::FromMicroseconds(5000)); 48 clock_->Advance(base::TimeDelta::FromMicroseconds(5000));
49 scheduler_.reset(new RendererSchedulerImpl(SchedulerTqmDelegateImpl::Create( 49 scheduler_.reset(new RendererSchedulerImpl(SchedulerTqmDelegateImpl::Create(
50 &message_loop_, base::MakeUnique<TestTimeSource>(clock_.get())))); 50 &message_loop_, base::MakeUnique<TestTimeSource>(clock_.get()))));
51 default_task_runner_ = scheduler_->DefaultTaskQueue(); 51 default_task_runner_ = scheduler_->DefaultTaskQueue();
52 thread_ = scheduler_->CreateMainThread(); 52 thread_ = scheduler_->CreateMainThread();
(...skipping 17 matching lines...) Expand all
70 70
71 DISALLOW_COPY_AND_ASSIGN(WebThreadImplForRendererSchedulerTest); 71 DISALLOW_COPY_AND_ASSIGN(WebThreadImplForRendererSchedulerTest);
72 }; 72 };
73 73
74 TEST_F(WebThreadImplForRendererSchedulerTest, TestTaskObserver) { 74 TEST_F(WebThreadImplForRendererSchedulerTest, TestTaskObserver) {
75 MockTaskObserver observer; 75 MockTaskObserver observer;
76 thread_->AddTaskObserver(&observer); 76 thread_->AddTaskObserver(&observer);
77 MockTask task; 77 MockTask task;
78 78
79 { 79 {
80 testing::InSequence sequence; 80 ::testing::InSequence sequence;
81 EXPECT_CALL(observer, WillProcessTask()); 81 EXPECT_CALL(observer, WillProcessTask());
82 EXPECT_CALL(task, Run()); 82 EXPECT_CALL(task, Run());
83 EXPECT_CALL(observer, DidProcessTask()); 83 EXPECT_CALL(observer, DidProcessTask());
84 } 84 }
85 85
86 thread_->GetWebTaskRunner()->PostTask( 86 thread_->GetWebTaskRunner()->PostTask(
87 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task))); 87 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task)));
88 base::RunLoop().RunUntilIdle(); 88 base::RunLoop().RunUntilIdle();
89 thread_->RemoveTaskObserver(&observer); 89 thread_->RemoveTaskObserver(&observer);
90 } 90 }
91 91
92 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithOneTask) { 92 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithOneTask) {
93 MockTaskObserver observer; 93 MockTaskObserver observer;
94 thread_->AddTaskObserver(&observer); 94 thread_->AddTaskObserver(&observer);
95 MockTask task; 95 MockTask task;
96 96
97 SetWorkBatchSizeForTesting(kWorkBatchSize); 97 SetWorkBatchSizeForTesting(kWorkBatchSize);
98 { 98 {
99 testing::InSequence sequence; 99 ::testing::InSequence sequence;
100 EXPECT_CALL(observer, WillProcessTask()); 100 EXPECT_CALL(observer, WillProcessTask());
101 EXPECT_CALL(task, Run()); 101 EXPECT_CALL(task, Run());
102 EXPECT_CALL(observer, DidProcessTask()); 102 EXPECT_CALL(observer, DidProcessTask());
103 } 103 }
104 104
105 thread_->GetWebTaskRunner()->PostTask( 105 thread_->GetWebTaskRunner()->PostTask(
106 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task))); 106 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task)));
107 base::RunLoop().RunUntilIdle(); 107 base::RunLoop().RunUntilIdle();
108 thread_->RemoveTaskObserver(&observer); 108 thread_->RemoveTaskObserver(&observer);
109 } 109 }
110 110
111 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithTwoTasks) { 111 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithTwoTasks) {
112 MockTaskObserver observer; 112 MockTaskObserver observer;
113 thread_->AddTaskObserver(&observer); 113 thread_->AddTaskObserver(&observer);
114 MockTask task1; 114 MockTask task1;
115 MockTask task2; 115 MockTask task2;
116 116
117 SetWorkBatchSizeForTesting(kWorkBatchSize); 117 SetWorkBatchSizeForTesting(kWorkBatchSize);
118 { 118 {
119 testing::InSequence sequence; 119 ::testing::InSequence sequence;
120 EXPECT_CALL(observer, WillProcessTask()); 120 EXPECT_CALL(observer, WillProcessTask());
121 EXPECT_CALL(task1, Run()); 121 EXPECT_CALL(task1, Run());
122 EXPECT_CALL(observer, DidProcessTask()); 122 EXPECT_CALL(observer, DidProcessTask());
123 123
124 EXPECT_CALL(observer, WillProcessTask()); 124 EXPECT_CALL(observer, WillProcessTask());
125 EXPECT_CALL(task2, Run()); 125 EXPECT_CALL(task2, Run());
126 EXPECT_CALL(observer, DidProcessTask()); 126 EXPECT_CALL(observer, DidProcessTask());
127 } 127 }
128 128
129 thread_->GetWebTaskRunner()->PostTask( 129 thread_->GetWebTaskRunner()->PostTask(
130 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task1))); 130 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task1)));
131 thread_->GetWebTaskRunner()->PostTask( 131 thread_->GetWebTaskRunner()->PostTask(
132 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task2))); 132 BLINK_FROM_HERE, WTF::Bind(&MockTask::Run, WTF::Unretained(&task2)));
133 base::RunLoop().RunUntilIdle(); 133 base::RunLoop().RunUntilIdle();
134 thread_->RemoveTaskObserver(&observer); 134 thread_->RemoveTaskObserver(&observer);
135 } 135 }
136 136
137 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithThreeTasks) { 137 TEST_F(WebThreadImplForRendererSchedulerTest, TestWorkBatchWithThreeTasks) {
138 MockTaskObserver observer; 138 MockTaskObserver observer;
139 thread_->AddTaskObserver(&observer); 139 thread_->AddTaskObserver(&observer);
140 MockTask task1; 140 MockTask task1;
141 MockTask task2; 141 MockTask task2;
142 MockTask task3; 142 MockTask task3;
143 143
144 SetWorkBatchSizeForTesting(kWorkBatchSize); 144 SetWorkBatchSizeForTesting(kWorkBatchSize);
145 { 145 {
146 testing::InSequence sequence; 146 ::testing::InSequence sequence;
147 EXPECT_CALL(observer, WillProcessTask()); 147 EXPECT_CALL(observer, WillProcessTask());
148 EXPECT_CALL(task1, Run()); 148 EXPECT_CALL(task1, Run());
149 EXPECT_CALL(observer, DidProcessTask()); 149 EXPECT_CALL(observer, DidProcessTask());
150 150
151 EXPECT_CALL(observer, WillProcessTask()); 151 EXPECT_CALL(observer, WillProcessTask());
152 EXPECT_CALL(task2, Run()); 152 EXPECT_CALL(task2, Run());
153 EXPECT_CALL(observer, DidProcessTask()); 153 EXPECT_CALL(observer, DidProcessTask());
154 154
155 EXPECT_CALL(observer, WillProcessTask()); 155 EXPECT_CALL(observer, WillProcessTask());
156 EXPECT_CALL(task3, Run()); 156 EXPECT_CALL(task3, Run());
(...skipping 19 matching lines...) Expand all
176 WTF::Bind(&base::RunLoop::Quit, WTF::Unretained(&run_loop))); 176 WTF::Bind(&base::RunLoop::Quit, WTF::Unretained(&run_loop)));
177 message_loop->SetNestableTasksAllowed(true); 177 message_loop->SetNestableTasksAllowed(true);
178 run_loop.Run(); 178 run_loop.Run();
179 } 179 }
180 180
181 TEST_F(WebThreadImplForRendererSchedulerTest, TestNestedRunLoop) { 181 TEST_F(WebThreadImplForRendererSchedulerTest, TestNestedRunLoop) {
182 MockTaskObserver observer; 182 MockTaskObserver observer;
183 thread_->AddTaskObserver(&observer); 183 thread_->AddTaskObserver(&observer);
184 184
185 { 185 {
186 testing::InSequence sequence; 186 ::testing::InSequence sequence;
187 187
188 // One callback for EnterRunLoop. 188 // One callback for EnterRunLoop.
189 EXPECT_CALL(observer, WillProcessTask()); 189 EXPECT_CALL(observer, WillProcessTask());
190 190
191 // A pair for ExitRunLoopTask. 191 // A pair for ExitRunLoopTask.
192 EXPECT_CALL(observer, WillProcessTask()); 192 EXPECT_CALL(observer, WillProcessTask());
193 EXPECT_CALL(observer, DidProcessTask()); 193 EXPECT_CALL(observer, DidProcessTask());
194 194
195 // A final callback for EnterRunLoop. 195 // A final callback for EnterRunLoop.
196 EXPECT_CALL(observer, DidProcessTask()); 196 EXPECT_CALL(observer, DidProcessTask());
197 } 197 }
198 198
199 message_loop_.task_runner()->PostTask( 199 message_loop_.task_runner()->PostTask(
200 FROM_HERE, base::Bind(&EnterRunLoop, base::Unretained(&message_loop_), 200 FROM_HERE, base::Bind(&EnterRunLoop, base::Unretained(&message_loop_),
201 base::Unretained(thread_.get()))); 201 base::Unretained(thread_.get())));
202 base::RunLoop().RunUntilIdle(); 202 base::RunLoop().RunUntilIdle();
203 thread_->RemoveTaskObserver(&observer); 203 thread_->RemoveTaskObserver(&observer);
204 } 204 }
205 205
206 } // namespace scheduler 206 } // namespace scheduler
207 } // namespace blink 207 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698