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 <limits.h> | 5 #include <limits.h> |
6 #include <stddef.h> | 6 #include <stddef.h> |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
568 | 568 |
569 const char* out_data = nullptr; | 569 const char* out_data = nullptr; |
570 EXPECT_TRUE(iter.ReadBytes(&out_data, out_data_length)); | 570 EXPECT_TRUE(iter.ReadBytes(&out_data, out_data_length)); |
571 EXPECT_EQ(data, std::string(out_data, out_data_length)); | 571 EXPECT_EQ(data, std::string(out_data, out_data_length)); |
572 | 572 |
573 int out_value; | 573 int out_value; |
574 EXPECT_TRUE(iter.ReadInt(&out_value)); | 574 EXPECT_TRUE(iter.ReadInt(&out_value)); |
575 EXPECT_EQ(42, out_value); | 575 EXPECT_EQ(42, out_value); |
576 } | 576 } |
577 | 577 |
| 578 // Checks that PickleSizer and Pickle agree on the size of things. |
| 579 TEST(PickleTest, PickleSizer) { |
| 580 { |
| 581 TestingPickle pickle; |
| 582 base::PickleSizer sizer; |
| 583 pickle.WriteBool(true); |
| 584 sizer.AddBool(); |
| 585 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 586 } |
| 587 { |
| 588 TestingPickle pickle; |
| 589 base::PickleSizer sizer; |
| 590 pickle.WriteInt(42); |
| 591 sizer.AddInt(); |
| 592 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 593 } |
| 594 { |
| 595 TestingPickle pickle; |
| 596 base::PickleSizer sizer; |
| 597 pickle.WriteLongUsingDangerousNonPortableLessPersistableForm(42); |
| 598 sizer.AddLongUsingDangerousNonPortableLessPersistableForm(); |
| 599 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 600 } |
| 601 { |
| 602 TestingPickle pickle; |
| 603 base::PickleSizer sizer; |
| 604 pickle.WriteUInt16(42); |
| 605 sizer.AddUInt16(); |
| 606 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 607 } |
| 608 { |
| 609 TestingPickle pickle; |
| 610 base::PickleSizer sizer; |
| 611 pickle.WriteUInt32(42); |
| 612 sizer.AddUInt32(); |
| 613 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 614 } |
| 615 { |
| 616 TestingPickle pickle; |
| 617 base::PickleSizer sizer; |
| 618 pickle.WriteInt64(42); |
| 619 sizer.AddInt64(); |
| 620 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 621 } |
| 622 { |
| 623 TestingPickle pickle; |
| 624 base::PickleSizer sizer; |
| 625 pickle.WriteUInt64(42); |
| 626 sizer.AddUInt64(); |
| 627 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 628 } |
| 629 { |
| 630 TestingPickle pickle; |
| 631 base::PickleSizer sizer; |
| 632 pickle.WriteSizeT(42); |
| 633 sizer.AddSizeT(); |
| 634 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 635 } |
| 636 { |
| 637 TestingPickle pickle; |
| 638 base::PickleSizer sizer; |
| 639 pickle.WriteFloat(42.0f); |
| 640 sizer.AddFloat(); |
| 641 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 642 } |
| 643 { |
| 644 TestingPickle pickle; |
| 645 base::PickleSizer sizer; |
| 646 pickle.WriteDouble(42.0); |
| 647 sizer.AddDouble(); |
| 648 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 649 } |
| 650 { |
| 651 TestingPickle pickle; |
| 652 base::PickleSizer sizer; |
| 653 pickle.WriteString(teststring); |
| 654 sizer.AddString(teststring); |
| 655 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 656 } |
| 657 { |
| 658 TestingPickle pickle; |
| 659 base::PickleSizer sizer; |
| 660 pickle.WriteString16(teststring16); |
| 661 sizer.AddString16(teststring16); |
| 662 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 663 } |
| 664 { |
| 665 TestingPickle pickle; |
| 666 base::PickleSizer sizer; |
| 667 pickle.WriteData(testdata, testdatalen); |
| 668 sizer.AddData(testdatalen); |
| 669 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 670 } |
| 671 { |
| 672 TestingPickle pickle; |
| 673 base::PickleSizer sizer; |
| 674 pickle.WriteBytes(testdata, testdatalen); |
| 675 sizer.AddBytes(testdatalen); |
| 676 EXPECT_EQ(sizer.payload_size(), pickle.payload_size()); |
| 677 } |
| 678 } |
| 679 |
578 } // namespace base | 680 } // namespace base |
OLD | NEW |