OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/compiler_specific.h" | 6 #include "base/compiler_specific.h" |
7 #include "cc/test/fake_content_layer_client.h" | 7 #include "cc/test/fake_content_layer_client.h" |
8 #include "cc/test/fake_picture_layer.h" | 8 #include "cc/test/fake_picture_layer.h" |
9 #include "cc/test/layer_tree_test.h" | 9 #include "cc/test/layer_tree_test.h" |
10 #include "cc/trees/thread_proxy.h" | 10 #include "cc/trees/thread_proxy.h" |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
280 EXPECT_EQ(1, update_check_layer_->update_count()); | 280 EXPECT_EQ(1, update_check_layer_->update_count()); |
281 EndTest(); | 281 EndTest(); |
282 } | 282 } |
283 | 283 |
284 private: | 284 private: |
285 DISALLOW_COPY_AND_ASSIGN(ThreadProxyTestSetNeedsCommitWhileAnimating); | 285 DISALLOW_COPY_AND_ASSIGN(ThreadProxyTestSetNeedsCommitWhileAnimating); |
286 }; | 286 }; |
287 | 287 |
288 THREAD_PROXY_TEST_F(ThreadProxyTestSetNeedsCommitWhileAnimating); | 288 THREAD_PROXY_TEST_F(ThreadProxyTestSetNeedsCommitWhileAnimating); |
289 | 289 |
290 class ThreadProxyTestCommitWaitsForActivation : public ThreadProxyTest { | |
291 protected: | |
292 ThreadProxyTestCommitWaitsForActivation() : commits_completed_(0) {} | |
293 ~ThreadProxyTestCommitWaitsForActivation() override {} | |
294 | |
295 void BeginTest() override { proxy()->SetNeedsCommit(); } | |
296 | |
297 void ScheduledActionCommit() override { | |
298 switch (commits_completed_) { | |
299 case 0: | |
300 // The first commit does not wait for activation. Verify that the | |
301 // completion event is cleared. | |
302 EXPECT_EQ(nullptr, ThreadProxyImplOnly().commit_completion_event); | |
vmpstr
2015/11/03 19:50:55
nit: We usually use EXPECT_TRUE/EXPECT_FALSE for n
Khushal
2015/11/03 20:03:05
Done.
| |
303 EXPECT_FALSE(ThreadProxyImplOnly().next_commit_waits_for_activation); | |
304 break; | |
305 case 1: | |
306 // The second commit should be held until activation. | |
307 EXPECT_NE(nullptr, ThreadProxyImplOnly().commit_completion_event); | |
vmpstr
2015/11/03 19:50:55
Here as well.
Khushal
2015/11/03 20:03:05
Done.
| |
308 EXPECT_TRUE(ThreadProxyImplOnly().next_commit_waits_for_activation); | |
309 break; | |
310 case 2: | |
311 // The third commit should not wait for activation. | |
312 EXPECT_EQ(nullptr, ThreadProxyImplOnly().commit_completion_event); | |
vmpstr
2015/11/03 19:50:55
Here as well.
Khushal
2015/11/03 20:03:05
Done.
| |
313 EXPECT_FALSE(ThreadProxyImplOnly().next_commit_waits_for_activation); | |
314 } | |
315 } | |
316 | |
317 void DidActivateSyncTree() override { | |
318 // The next_commit_waits_for_activation should have been cleared after the | |
319 // sync tree is activated. | |
320 EXPECT_FALSE(ThreadProxyImplOnly().next_commit_waits_for_activation); | |
321 } | |
322 | |
323 void DidCommit() override { | |
324 switch (commits_completed_) { | |
325 case 0: | |
326 // The first commit has been completed. Set next commit waits for | |
327 // activation and start another commit. | |
328 commits_completed_++; | |
David Trainor- moved to gerrit
2015/11/02 16:19:44
Pull this out of the switch? Otherwise if you som
Khushal
2015/11/02 17:02:54
The AfterTest should catch that right? It makes su
| |
329 proxy()->SetNextCommitWaitsForActivation(); | |
330 proxy()->SetNeedsCommit(); | |
331 case 1: | |
332 // Start another commit to verify that this is not held until | |
333 // activation. | |
334 commits_completed_++; | |
335 proxy()->SetNeedsCommit(); | |
336 case 2: | |
337 commits_completed_++; | |
338 EndTest(); | |
339 } | |
340 } | |
341 | |
342 void AfterTest() override { EXPECT_EQ(3, commits_completed_); } | |
343 | |
344 private: | |
345 int commits_completed_; | |
346 | |
347 DISALLOW_COPY_AND_ASSIGN(ThreadProxyTestCommitWaitsForActivation); | |
348 }; | |
349 | |
350 THREAD_PROXY_TEST_F(ThreadProxyTestCommitWaitsForActivation); | |
351 | |
290 } // namespace cc | 352 } // namespace cc |
OLD | NEW |