aboutsummaryrefslogtreecommitdiff
path: root/src/google/protobuf/drop_unknown_fields_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/google/protobuf/drop_unknown_fields_test.cc')
-rw-r--r--src/google/protobuf/drop_unknown_fields_test.cc54
1 files changed, 5 insertions, 49 deletions
diff --git a/src/google/protobuf/drop_unknown_fields_test.cc b/src/google/protobuf/drop_unknown_fields_test.cc
index 437a04e7..55b9ecd3 100644
--- a/src/google/protobuf/drop_unknown_fields_test.cc
+++ b/src/google/protobuf/drop_unknown_fields_test.cc
@@ -35,35 +35,13 @@
#include <google/protobuf/message_lite.h>
#include <gtest/gtest.h>
-namespace google {
using unittest_drop_unknown_fields::Foo;
using unittest_drop_unknown_fields::FooWithExtraFields;
+namespace google {
namespace protobuf {
-TEST(DropUnknownFieldsTest, GeneratedMessageDefaultDrop) {
- ::google::protobuf::internal::SetProto3PreserveUnknownsDefault(false);
- FooWithExtraFields foo_with_extra_fields;
- foo_with_extra_fields.set_int32_value(1);
- foo_with_extra_fields.set_enum_value(FooWithExtraFields::QUX);
- foo_with_extra_fields.set_extra_int32_value(2);
-
- Foo foo;
- ASSERT_TRUE(foo.ParseFromString(foo_with_extra_fields.SerializeAsString()));
- EXPECT_EQ(1, foo.int32_value());
- EXPECT_EQ(static_cast<int>(FooWithExtraFields::QUX),
- static_cast<int>(foo.enum_value()));
- EXPECT_TRUE(foo.GetReflection()->GetUnknownFields(foo).empty());
-
- ASSERT_TRUE(foo_with_extra_fields.ParseFromString(foo.SerializeAsString()));
- EXPECT_EQ(1, foo_with_extra_fields.int32_value());
- EXPECT_EQ(FooWithExtraFields::QUX, foo_with_extra_fields.enum_value());
- // The "extra_int32_value" field should be lost.
- EXPECT_EQ(0, foo_with_extra_fields.extra_int32_value());
-}
-
-TEST(DropUnknownFieldsTest, GeneratedMessageDefaultPreserve) {
- ::google::protobuf::internal::SetProto3PreserveUnknownsDefault(true);
+TEST(DropUnknownFieldsTest, GeneratedMessage) {
FooWithExtraFields foo_with_extra_fields;
foo_with_extra_fields.set_int32_value(1);
foo_with_extra_fields.set_enum_value(FooWithExtraFields::QUX);
@@ -83,36 +61,14 @@ TEST(DropUnknownFieldsTest, GeneratedMessageDefaultPreserve) {
EXPECT_EQ(2, foo_with_extra_fields.extra_int32_value());
}
-TEST(DropUnknownFieldsTest, DynamicMessageDefaultDrop) {
- internal::SetProto3PreserveUnknownsDefault(false);
- FooWithExtraFields foo_with_extra_fields;
- foo_with_extra_fields.set_int32_value(1);
- foo_with_extra_fields.set_enum_value(FooWithExtraFields::QUX);
- foo_with_extra_fields.set_extra_int32_value(2);
-
- google::protobuf::DynamicMessageFactory factory;
- std::unique_ptr<google::protobuf::Message> foo(
- factory.GetPrototype(Foo::descriptor())->New());
- ASSERT_TRUE(foo->ParseFromString(foo_with_extra_fields.SerializeAsString()));
- EXPECT_TRUE(foo->GetReflection()->GetUnknownFields(*foo).empty());
-
- ASSERT_TRUE(foo_with_extra_fields.ParseFromString(foo->SerializeAsString()));
- EXPECT_EQ(1, foo_with_extra_fields.int32_value());
- EXPECT_EQ(FooWithExtraFields::QUX, foo_with_extra_fields.enum_value());
- // The "extra_int32_value" field should be lost.
- EXPECT_EQ(0, foo_with_extra_fields.extra_int32_value());
-}
-
-TEST(DropUnknownFieldsTest, DynamicMessageDefaultPreserve) {
- internal::SetProto3PreserveUnknownsDefault(true);
+TEST(DropUnknownFieldsTest, DynamicMessage) {
FooWithExtraFields foo_with_extra_fields;
foo_with_extra_fields.set_int32_value(1);
foo_with_extra_fields.set_enum_value(FooWithExtraFields::QUX);
foo_with_extra_fields.set_extra_int32_value(2);
- google::protobuf::DynamicMessageFactory factory;
- std::unique_ptr<google::protobuf::Message> foo(
- factory.GetPrototype(Foo::descriptor())->New());
+ DynamicMessageFactory factory;
+ std::unique_ptr<Message> foo(factory.GetPrototype(Foo::descriptor())->New());
ASSERT_TRUE(foo->ParseFromString(foo_with_extra_fields.SerializeAsString()));
EXPECT_FALSE(foo->GetReflection()->GetUnknownFields(*foo).empty());