OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/common/cc_messages.h" | 5 #include "content/common/cc_messages.h" |
6 | 6 |
7 #include <string.h> | 7 #include <string.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 | 10 |
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
470 yuvvideo_in->shared_quad_state); | 470 yuvvideo_in->shared_quad_state); |
471 | 471 |
472 // Make sure the in and cmp RenderPasses match. | 472 // Make sure the in and cmp RenderPasses match. |
473 Compare(pass_cmp.get(), pass_in.get()); | 473 Compare(pass_cmp.get(), pass_in.get()); |
474 ASSERT_EQ(3u, pass_in->shared_quad_state_list.size()); | 474 ASSERT_EQ(3u, pass_in->shared_quad_state_list.size()); |
475 ASSERT_EQ(10u, pass_in->quad_list.size()); | 475 ASSERT_EQ(10u, pass_in->quad_list.size()); |
476 for (size_t i = 0; i < 3; ++i) { | 476 for (size_t i = 0; i < 3; ++i) { |
477 Compare(pass_cmp->shared_quad_state_list[i], | 477 Compare(pass_cmp->shared_quad_state_list[i], |
478 pass_in->shared_quad_state_list[i]); | 478 pass_in->shared_quad_state_list[i]); |
479 } | 479 } |
480 for (size_t i = 0; i < pass_in->quad_list.size(); ++i) | 480 for (cc::QuadList::Iterator in_iter = pass_in->quad_list.begin(), |
481 Compare(pass_cmp->quad_list[i], pass_in->quad_list[i]); | 481 cmp_iter = pass_cmp->quad_list.begin(); |
482 for (size_t i = 1; i < pass_in->quad_list.size(); ++i) { | 482 in_iter != pass_in->quad_list.end(); |
483 bool same_shared_quad_state_cmp = | 483 ++in_iter, ++cmp_iter) |
484 pass_cmp->quad_list[i]->shared_quad_state == | 484 Compare(&*cmp_iter, &*in_iter); |
485 pass_cmp->quad_list[i - 1]->shared_quad_state; | 485 |
486 bool same_shared_quad_state_in = | 486 cc::QuadList::Iterator in_iter_next = pass_in->quad_list.begin(); |
487 pass_in->quad_list[i]->shared_quad_state == | 487 ++in_iter_next; |
488 pass_in->quad_list[i - 1]->shared_quad_state; | 488 cc::QuadList::Iterator cmp_iter_next = pass_cmp->quad_list.begin(); |
489 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in); | 489 ++cmp_iter_next; |
490 for (cc::QuadList::Iterator in_iter = pass_in->quad_list.begin(), | |
491 cmp_iter = pass_cmp->quad_list.begin(); | |
492 in_iter_next != pass_in->quad_list.end(); | |
493 ++in_iter, ++cmp_iter, ++in_iter_next, ++cmp_iter_next) { | |
494 if (in_iter_next != pass_in->quad_list.end()) { | |
danakj
2014/09/23 17:59:38
Can you do this without managing 2 sets of 2 itera
weiliangc
2014/09/24 20:14:35
Done with using at().
I was thinking every time a
| |
495 bool same_shared_quad_state_cmp = | |
496 in_iter->shared_quad_state == in_iter_next->shared_quad_state; | |
497 bool same_shared_quad_state_in = | |
498 cmp_iter->shared_quad_state == cmp_iter_next->shared_quad_state; | |
499 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in); | |
500 } | |
490 } | 501 } |
491 | 502 |
492 DelegatedFrameData frame_in; | 503 DelegatedFrameData frame_in; |
493 frame_in.render_pass_list.push_back(pass_in.Pass()); | 504 frame_in.render_pass_list.push_back(pass_in.Pass()); |
494 | 505 |
495 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); | 506 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); |
496 | 507 |
497 DelegatedFrameData frame_out; | 508 DelegatedFrameData frame_out; |
498 PickleIterator iter(msg); | 509 PickleIterator iter(msg); |
499 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, | 510 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, |
500 &iter, &frame_out)); | 511 &iter, &frame_out)); |
501 | 512 |
502 // Make sure the out and cmp RenderPasses match. | 513 // Make sure the out and cmp RenderPasses match. |
503 scoped_ptr<RenderPass> pass_out = frame_out.render_pass_list.take( | 514 scoped_ptr<RenderPass> pass_out = frame_out.render_pass_list.take( |
504 frame_out.render_pass_list.begin()); | 515 frame_out.render_pass_list.begin()); |
505 Compare(pass_cmp.get(), pass_out.get()); | 516 Compare(pass_cmp.get(), pass_out.get()); |
506 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size()); | 517 ASSERT_EQ(3u, pass_out->shared_quad_state_list.size()); |
507 ASSERT_EQ(10u, pass_out->quad_list.size()); | 518 ASSERT_EQ(10u, pass_out->quad_list.size()); |
508 for (size_t i = 0; i < 3; ++i) { | 519 for (size_t i = 0; i < 3; ++i) { |
509 Compare(pass_cmp->shared_quad_state_list[i], | 520 Compare(pass_cmp->shared_quad_state_list[i], |
510 pass_out->shared_quad_state_list[i]); | 521 pass_out->shared_quad_state_list[i]); |
511 } | 522 } |
512 for (size_t i = 0; i < pass_out->quad_list.size(); ++i) | 523 for (cc::QuadList::Iterator out_iter = pass_out->quad_list.begin(), |
513 Compare(pass_cmp->quad_list[i], pass_out->quad_list[i]); | 524 cmp_iter = pass_cmp->quad_list.begin(); |
514 for (size_t i = 1; i < pass_out->quad_list.size(); ++i) { | 525 out_iter != pass_out->quad_list.end(); |
515 bool same_shared_quad_state_cmp = | 526 ++out_iter, ++cmp_iter) |
516 pass_cmp->quad_list[i]->shared_quad_state == | 527 Compare(&*cmp_iter, &*out_iter); |
517 pass_cmp->quad_list[i - 1]->shared_quad_state; | 528 |
518 bool same_shared_quad_state_out = | 529 cc::QuadList::Iterator out_iter_next = pass_out->quad_list.begin(); |
519 pass_out->quad_list[i]->shared_quad_state == | 530 ++out_iter_next; |
520 pass_out->quad_list[i - 1]->shared_quad_state; | 531 cmp_iter_next = pass_cmp->quad_list.begin(); |
521 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_out); | 532 ++cmp_iter_next; |
533 for (cc::QuadList::Iterator out_iter = pass_out->quad_list.begin(), | |
534 cmp_iter = pass_cmp->quad_list.begin(); | |
535 out_iter_next != pass_out->quad_list.end(); | |
536 ++out_iter, ++cmp_iter, ++out_iter_next, ++cmp_iter_next) { | |
537 if (out_iter_next != pass_out->quad_list.end()) { | |
538 bool same_shared_quad_state_cmp = | |
539 out_iter->shared_quad_state == out_iter_next->shared_quad_state; | |
540 bool same_shared_quad_state_out = | |
541 cmp_iter->shared_quad_state == cmp_iter_next->shared_quad_state; | |
542 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_out); | |
543 } | |
522 } | 544 } |
523 } | 545 } |
524 | 546 |
525 TEST_F(CCMessagesTest, UnusedSharedQuadStates) { | 547 TEST_F(CCMessagesTest, UnusedSharedQuadStates) { |
526 scoped_ptr<RenderPass> pass_in = RenderPass::Create(); | 548 scoped_ptr<RenderPass> pass_in = RenderPass::Create(); |
527 pass_in->SetAll(RenderPassId(1, 1), | 549 pass_in->SetAll(RenderPassId(1, 1), |
528 gfx::Rect(100, 100), | 550 gfx::Rect(100, 100), |
529 gfx::Rect(), | 551 gfx::Rect(), |
530 gfx::Transform(), | 552 gfx::Transform(), |
531 false); | 553 false); |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
748 SoftwareFrameData frame_out; | 770 SoftwareFrameData frame_out; |
749 PickleIterator iter(msg); | 771 PickleIterator iter(msg); |
750 EXPECT_EQ( | 772 EXPECT_EQ( |
751 expect_read, | 773 expect_read, |
752 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out)); | 774 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out)); |
753 } | 775 } |
754 } | 776 } |
755 | 777 |
756 } // namespace | 778 } // namespace |
757 } // namespace content | 779 } // namespace content |
OLD | NEW |