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

Side by Side Diff: content/common/cc_messages_unittest.cc

Issue 1154283003: Change most uses of Pickle to base::Pickle (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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 (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 477 matching lines...) Expand 10 before | Expand all | Expand 10 after
488 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in); 488 EXPECT_EQ(same_shared_quad_state_cmp, same_shared_quad_state_in);
489 } 489 }
490 490
491 DelegatedFrameData frame_in; 491 DelegatedFrameData frame_in;
492 frame_in.render_pass_list.push_back(child_pass_in.Pass()); 492 frame_in.render_pass_list.push_back(child_pass_in.Pass());
493 frame_in.render_pass_list.push_back(pass_in.Pass()); 493 frame_in.render_pass_list.push_back(pass_in.Pass());
494 494
495 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); 495 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in);
496 496
497 DelegatedFrameData frame_out; 497 DelegatedFrameData frame_out;
498 PickleIterator iter(msg); 498 base::PickleIterator iter(msg);
499 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, 499 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg,
500 &iter, &frame_out)); 500 &iter, &frame_out));
501 501
502 // Make sure the out and cmp RenderPasses match. 502 // Make sure the out and cmp RenderPasses match.
503 scoped_ptr<RenderPass> child_pass_out = 503 scoped_ptr<RenderPass> child_pass_out =
504 frame_out.render_pass_list.take(frame_out.render_pass_list.begin()); 504 frame_out.render_pass_list.take(frame_out.render_pass_list.begin());
505 Compare(child_pass_cmp.get(), child_pass_out.get()); 505 Compare(child_pass_cmp.get(), child_pass_out.get());
506 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size()); 506 ASSERT_EQ(0u, child_pass_out->shared_quad_state_list.size());
507 ASSERT_EQ(0u, child_pass_out->quad_list.size()); 507 ASSERT_EQ(0u, child_pass_out->quad_list.size());
508 scoped_ptr<RenderPass> pass_out = 508 scoped_ptr<RenderPass> pass_out =
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
610 ASSERT_EQ(5u, pass_in->shared_quad_state_list.size()); 610 ASSERT_EQ(5u, pass_in->shared_quad_state_list.size());
611 ASSERT_EQ(2u, pass_in->quad_list.size()); 611 ASSERT_EQ(2u, pass_in->quad_list.size());
612 612
613 DelegatedFrameData frame_in; 613 DelegatedFrameData frame_in;
614 frame_in.render_pass_list.push_back(pass_in.Pass()); 614 frame_in.render_pass_list.push_back(pass_in.Pass());
615 615
616 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); 616 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL);
617 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); 617 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in);
618 618
619 DelegatedFrameData frame_out; 619 DelegatedFrameData frame_out;
620 PickleIterator iter(msg); 620 base::PickleIterator iter(msg);
621 EXPECT_TRUE( 621 EXPECT_TRUE(
622 IPC::ParamTraits<DelegatedFrameData>::Read(&msg, &iter, &frame_out)); 622 IPC::ParamTraits<DelegatedFrameData>::Read(&msg, &iter, &frame_out));
623 623
624 scoped_ptr<RenderPass> pass_out = 624 scoped_ptr<RenderPass> pass_out =
625 frame_out.render_pass_list.take(frame_out.render_pass_list.begin()); 625 frame_out.render_pass_list.take(frame_out.render_pass_list.begin());
626 626
627 // 2 SharedQuadStates come out. The first and fourth SharedQuadStates were 627 // 2 SharedQuadStates come out. The first and fourth SharedQuadStates were
628 // used by quads, and so serialized. Others were not. 628 // used by quads, and so serialized. Others were not.
629 ASSERT_EQ(2u, pass_out->shared_quad_state_list.size()); 629 ASSERT_EQ(2u, pass_out->shared_quad_state_list.size());
630 ASSERT_EQ(2u, pass_out->quad_list.size()); 630 ASSERT_EQ(2u, pass_out->quad_list.size());
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 RenderPassId(1, 1), gfx::Rect(), gfx::Rect(), gfx::Transform()); 678 RenderPassId(1, 1), gfx::Rect(), gfx::Rect(), gfx::Transform());
679 679
680 DelegatedFrameData frame_in; 680 DelegatedFrameData frame_in;
681 frame_in.resource_list.push_back(arbitrary_resource1); 681 frame_in.resource_list.push_back(arbitrary_resource1);
682 frame_in.resource_list.push_back(arbitrary_resource2); 682 frame_in.resource_list.push_back(arbitrary_resource2);
683 frame_in.render_pass_list.push_back(renderpass_in.Pass()); 683 frame_in.render_pass_list.push_back(renderpass_in.Pass());
684 684
685 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in); 685 IPC::ParamTraits<DelegatedFrameData>::Write(&msg, frame_in);
686 686
687 DelegatedFrameData frame_out; 687 DelegatedFrameData frame_out;
688 PickleIterator iter(msg); 688 base::PickleIterator iter(msg);
689 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg, 689 EXPECT_TRUE(IPC::ParamTraits<DelegatedFrameData>::Read(&msg,
690 &iter, &frame_out)); 690 &iter, &frame_out));
691 691
692 ASSERT_EQ(2u, frame_out.resource_list.size()); 692 ASSERT_EQ(2u, frame_out.resource_list.size());
693 Compare(arbitrary_resource1, frame_out.resource_list[0]); 693 Compare(arbitrary_resource1, frame_out.resource_list[0]);
694 Compare(arbitrary_resource2, frame_out.resource_list[1]); 694 Compare(arbitrary_resource2, frame_out.resource_list[1]);
695 } 695 }
696 696
697 TEST_F(CCMessagesTest, SoftwareFrameData) { 697 TEST_F(CCMessagesTest, SoftwareFrameData) {
698 cc::SoftwareFrameData frame_in; 698 cc::SoftwareFrameData frame_in;
699 frame_in.id = 3; 699 frame_in.id = 3;
700 frame_in.size = gfx::Size(40, 20); 700 frame_in.size = gfx::Size(40, 20);
701 frame_in.damage_rect = gfx::Rect(5, 18, 31, 44); 701 frame_in.damage_rect = gfx::Rect(5, 18, 31, 44);
702 frame_in.bitmap_id = cc::SharedBitmap::GenerateId(); 702 frame_in.bitmap_id = cc::SharedBitmap::GenerateId();
703 703
704 // Write the frame. 704 // Write the frame.
705 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); 705 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL);
706 IPC::ParamTraits<cc::SoftwareFrameData>::Write(&msg, frame_in); 706 IPC::ParamTraits<cc::SoftwareFrameData>::Write(&msg, frame_in);
707 707
708 // Read the frame. 708 // Read the frame.
709 cc::SoftwareFrameData frame_out; 709 cc::SoftwareFrameData frame_out;
710 PickleIterator iter(msg); 710 base::PickleIterator iter(msg);
711 EXPECT_TRUE( 711 EXPECT_TRUE(
712 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out)); 712 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out));
713 EXPECT_EQ(frame_in.id, frame_out.id); 713 EXPECT_EQ(frame_in.id, frame_out.id);
714 EXPECT_EQ(frame_in.size.ToString(), frame_out.size.ToString()); 714 EXPECT_EQ(frame_in.size.ToString(), frame_out.size.ToString());
715 EXPECT_EQ(frame_in.damage_rect.ToString(), frame_out.damage_rect.ToString()); 715 EXPECT_EQ(frame_in.damage_rect.ToString(), frame_out.damage_rect.ToString());
716 EXPECT_EQ(frame_in.bitmap_id, frame_out.bitmap_id); 716 EXPECT_EQ(frame_in.bitmap_id, frame_out.bitmap_id);
717 } 717 }
718 718
719 TEST_F(CCMessagesTest, SoftwareFrameDataMaxInt) { 719 TEST_F(CCMessagesTest, SoftwareFrameDataMaxInt) {
720 SoftwareFrameData frame_in; 720 SoftwareFrameData frame_in;
721 frame_in.id = 3; 721 frame_in.id = 3;
722 frame_in.size = gfx::Size(40, 20); 722 frame_in.size = gfx::Size(40, 20);
723 frame_in.damage_rect = gfx::Rect(5, 18, 31, 44); 723 frame_in.damage_rect = gfx::Rect(5, 18, 31, 44);
724 frame_in.bitmap_id = cc::SharedBitmap::GenerateId(); 724 frame_in.bitmap_id = cc::SharedBitmap::GenerateId();
725 725
726 // Write the SoftwareFrameData by hand, make sure it works. 726 // Write the SoftwareFrameData by hand, make sure it works.
727 { 727 {
728 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); 728 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL);
729 IPC::WriteParam(&msg, frame_in.id); 729 IPC::WriteParam(&msg, frame_in.id);
730 IPC::WriteParam(&msg, frame_in.size); 730 IPC::WriteParam(&msg, frame_in.size);
731 IPC::WriteParam(&msg, frame_in.damage_rect); 731 IPC::WriteParam(&msg, frame_in.damage_rect);
732 IPC::WriteParam(&msg, frame_in.bitmap_id); 732 IPC::WriteParam(&msg, frame_in.bitmap_id);
733 SoftwareFrameData frame_out; 733 SoftwareFrameData frame_out;
734 PickleIterator iter(msg); 734 base::PickleIterator iter(msg);
735 EXPECT_TRUE( 735 EXPECT_TRUE(
736 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out)); 736 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out));
737 } 737 }
738 738
739 // The size of the frame may overflow when multiplied together. 739 // The size of the frame may overflow when multiplied together.
740 int max = std::numeric_limits<int>::max(); 740 int max = std::numeric_limits<int>::max();
741 frame_in.size = gfx::Size(max, max); 741 frame_in.size = gfx::Size(max, max);
742 742
743 // If size_t is larger than int, then int*int*4 can always fit in size_t. 743 // If size_t is larger than int, then int*int*4 can always fit in size_t.
744 bool expect_read = sizeof(size_t) >= sizeof(int) * 2; 744 bool expect_read = sizeof(size_t) >= sizeof(int) * 2;
745 745
746 // Write the SoftwareFrameData with the MaxInt size, if it causes overflow it 746 // Write the SoftwareFrameData with the MaxInt size, if it causes overflow it
747 // should fail. 747 // should fail.
748 { 748 {
749 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); 749 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL);
750 IPC::WriteParam(&msg, frame_in.id); 750 IPC::WriteParam(&msg, frame_in.id);
751 IPC::WriteParam(&msg, frame_in.size); 751 IPC::WriteParam(&msg, frame_in.size);
752 IPC::WriteParam(&msg, frame_in.damage_rect); 752 IPC::WriteParam(&msg, frame_in.damage_rect);
753 IPC::WriteParam(&msg, frame_in.bitmap_id); 753 IPC::WriteParam(&msg, frame_in.bitmap_id);
754 SoftwareFrameData frame_out; 754 SoftwareFrameData frame_out;
755 PickleIterator iter(msg); 755 base::PickleIterator iter(msg);
756 EXPECT_EQ( 756 EXPECT_EQ(
757 expect_read, 757 expect_read,
758 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out)); 758 IPC::ParamTraits<SoftwareFrameData>::Read(&msg, &iter, &frame_out));
759 } 759 }
760 } 760 }
761 761
762 } // namespace 762 } // namespace
763 } // namespace content 763 } // namespace content
OLDNEW
« no previous file with comments | « content/common/cc_messages.cc ('k') | content/common/child_process_sandbox_support_impl_linux.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698