OLD | NEW |
1 // Protocol Buffers - Google's data interchange format | 1 // Protocol Buffers - Google's data interchange format |
2 // Copyright 2008 Google Inc. All rights reserved. | 2 // Copyright 2008 Google Inc. All rights reserved. |
3 // https://developers.google.com/protocol-buffers/ | 3 // https://developers.google.com/protocol-buffers/ |
4 // | 4 // |
5 // Redistribution and use in source and binary forms, with or without | 5 // Redistribution and use in source and binary forms, with or without |
6 // modification, are permitted provided that the following conditions are | 6 // modification, are permitted provided that the following conditions are |
7 // met: | 7 // met: |
8 // | 8 // |
9 // * Redistributions of source code must retain the above copyright | 9 // * Redistributions of source code must retain the above copyright |
10 // notice, this list of conditions and the following disclaimer. | 10 // notice, this list of conditions and the following disclaimer. |
(...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
481 | 481 |
482 EXPECT_EQ(repeated_field->number(), unknown_fields.field(2).number()); | 482 EXPECT_EQ(repeated_field->number(), unknown_fields.field(2).number()); |
483 ASSERT_EQ(UnknownField::TYPE_VARINT, unknown_fields.field(2).type()); | 483 ASSERT_EQ(UnknownField::TYPE_VARINT, unknown_fields.field(2).type()); |
484 EXPECT_EQ(6, unknown_fields.field(2).varint()); | 484 EXPECT_EQ(6, unknown_fields.field(2).varint()); |
485 } | 485 } |
486 } | 486 } |
487 | 487 |
488 TEST_F(UnknownFieldSetTest, SpaceUsedExcludingSelf) { | 488 TEST_F(UnknownFieldSetTest, SpaceUsedExcludingSelf) { |
489 UnknownFieldSet empty; | 489 UnknownFieldSet empty; |
490 empty.AddVarint(1, 0); | 490 empty.AddVarint(1, 0); |
491 EXPECT_EQ(sizeof(vector<UnknownField>) + sizeof(UnknownField), | 491 EXPECT_EQ(sizeof(std::vector<UnknownField>) + sizeof(UnknownField), |
492 empty.SpaceUsedExcludingSelf()); | 492 empty.SpaceUsedExcludingSelf()); |
493 } | 493 } |
494 | 494 |
495 TEST_F(UnknownFieldSetTest, SpaceUsed) { | 495 TEST_F(UnknownFieldSetTest, SpaceUsed) { |
496 unittest::TestEmptyMessage empty_message; | 496 unittest::TestEmptyMessage empty_message; |
497 | 497 |
498 // Make sure an unknown field set has zero space used until a field is | 498 // Make sure an unknown field set has zero space used until a field is |
499 // actually added. | 499 // actually added. |
500 int base_size = empty_message.SpaceUsed(); | 500 int base_size = empty_message.SpaceUsed(); |
501 UnknownFieldSet* unknown_fields = empty_message.mutable_unknown_fields(); | 501 UnknownFieldSet* unknown_fields = empty_message.mutable_unknown_fields(); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
552 EXPECT_EQ(i, unknown.field(i).fixed32()); | 552 EXPECT_EQ(i, unknown.field(i).fixed32()); |
553 } else { | 553 } else { |
554 EXPECT_EQ(i + num, unknown.field(i).fixed32()); | 554 EXPECT_EQ(i + num, unknown.field(i).fixed32()); |
555 } | 555 } |
556 } | 556 } |
557 } | 557 } |
558 } | 558 } |
559 } | 559 } |
560 } | 560 } |
561 | 561 |
562 void CheckDeleteByNumber(const vector<int>& field_numbers, int deleted_number, | 562 void CheckDeleteByNumber(const std::vector<int>& field_numbers, |
563 const vector<int>& expected_field_nubmers) { | 563 int deleted_number, |
| 564 const std::vector<int>& expected_field_nubmers) { |
564 UnknownFieldSet unknown_fields; | 565 UnknownFieldSet unknown_fields; |
565 for (int i = 0; i < field_numbers.size(); ++i) { | 566 for (int i = 0; i < field_numbers.size(); ++i) { |
566 unknown_fields.AddFixed32(field_numbers[i], i); | 567 unknown_fields.AddFixed32(field_numbers[i], i); |
567 } | 568 } |
568 unknown_fields.DeleteByNumber(deleted_number); | 569 unknown_fields.DeleteByNumber(deleted_number); |
569 ASSERT_EQ(expected_field_nubmers.size(), unknown_fields.field_count()); | 570 ASSERT_EQ(expected_field_nubmers.size(), unknown_fields.field_count()); |
570 for (int i = 0; i < expected_field_nubmers.size(); ++i) { | 571 for (int i = 0; i < expected_field_nubmers.size(); ++i) { |
571 EXPECT_EQ(expected_field_nubmers[i], | 572 EXPECT_EQ(expected_field_nubmers[i], |
572 unknown_fields.field(i).number()); | 573 unknown_fields.field(i).number()); |
573 } | 574 } |
574 } | 575 } |
575 | 576 |
576 #define MAKE_VECTOR(x) vector<int>(x, x + GOOGLE_ARRAYSIZE(x)) | 577 #define MAKE_VECTOR(x) std::vector<int>(x, x + GOOGLE_ARRAYSIZE(x)) |
577 TEST_F(UnknownFieldSetTest, DeleteByNumber) { | 578 TEST_F(UnknownFieldSetTest, DeleteByNumber) { |
578 CheckDeleteByNumber(vector<int>(), 1, vector<int>()); | 579 CheckDeleteByNumber(std::vector<int>(), 1, std::vector<int>()); |
579 static const int kTestFieldNumbers1[] = {1, 2, 3}; | 580 static const int kTestFieldNumbers1[] = {1, 2, 3}; |
580 static const int kFieldNumberToDelete1 = 1; | 581 static const int kFieldNumberToDelete1 = 1; |
581 static const int kExpectedFieldNumbers1[] = {2, 3}; | 582 static const int kExpectedFieldNumbers1[] = {2, 3}; |
582 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers1), kFieldNumberToDelete1, | 583 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers1), kFieldNumberToDelete1, |
583 MAKE_VECTOR(kExpectedFieldNumbers1)); | 584 MAKE_VECTOR(kExpectedFieldNumbers1)); |
584 static const int kTestFieldNumbers2[] = {1, 2, 3}; | 585 static const int kTestFieldNumbers2[] = {1, 2, 3}; |
585 static const int kFieldNumberToDelete2 = 2; | 586 static const int kFieldNumberToDelete2 = 2; |
586 static const int kExpectedFieldNumbers2[] = {1, 3}; | 587 static const int kExpectedFieldNumbers2[] = {1, 3}; |
587 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers2), kFieldNumberToDelete2, | 588 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers2), kFieldNumberToDelete2, |
588 MAKE_VECTOR(kExpectedFieldNumbers2)); | 589 MAKE_VECTOR(kExpectedFieldNumbers2)); |
(...skipping 11 matching lines...) Expand all Loading... |
600 static const int kFieldNumberToDelete5 = 6; | 601 static const int kFieldNumberToDelete5 = 6; |
601 static const int kExpectedFieldNumbers5[] = {1, 2, 3, 4, 5}; | 602 static const int kExpectedFieldNumbers5[] = {1, 2, 3, 4, 5}; |
602 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers5), kFieldNumberToDelete5, | 603 CheckDeleteByNumber(MAKE_VECTOR(kTestFieldNumbers5), kFieldNumberToDelete5, |
603 MAKE_VECTOR(kExpectedFieldNumbers5)); | 604 MAKE_VECTOR(kExpectedFieldNumbers5)); |
604 } | 605 } |
605 #undef MAKE_VECTOR | 606 #undef MAKE_VECTOR |
606 } // namespace | 607 } // namespace |
607 | 608 |
608 } // namespace protobuf | 609 } // namespace protobuf |
609 } // namespace google | 610 } // namespace google |
OLD | NEW |