Index: third_party/protobuf/src/google/protobuf/message_unittest.cc |
diff --git a/third_party/protobuf/src/google/protobuf/message_unittest.cc b/third_party/protobuf/src/google/protobuf/message_unittest.cc |
index 75d60b8b4aca4d2bb6afd7863eff1d94f29773d5..a1449c76f474f456279ef3da147c6ad271043a50 100644 |
--- a/third_party/protobuf/src/google/protobuf/message_unittest.cc |
+++ b/third_party/protobuf/src/google/protobuf/message_unittest.cc |
@@ -1,6 +1,6 @@ |
// Protocol Buffers - Google's data interchange format |
// Copyright 2008 Google Inc. All rights reserved. |
-// https://developers.google.com/protocol-buffers/ |
+// http://code.google.com/p/protobuf/ |
// |
// Redistribution and use in source and binary forms, with or without |
// modification, are permitted provided that the following conditions are |
@@ -45,15 +45,14 @@ |
#include <sstream> |
#include <fstream> |
-#include <google/protobuf/test_util.h> |
-#include <google/protobuf/unittest.pb.h> |
-#include <google/protobuf/io/coded_stream.h> |
+#include <google/protobuf/stubs/common.h> |
#include <google/protobuf/io/zero_copy_stream_impl.h> |
-#include <google/protobuf/descriptor.pb.h> |
+#include <google/protobuf/io/coded_stream.h> |
#include <google/protobuf/descriptor.h> |
-#include <google/protobuf/generated_message_reflection.h> |
+#include <google/protobuf/descriptor.pb.h> |
+#include <google/protobuf/unittest.pb.h> |
+#include <google/protobuf/test_util.h> |
-#include <google/protobuf/stubs/common.h> |
#include <google/protobuf/testing/googletest.h> |
#include <gtest/gtest.h> |
@@ -206,29 +205,7 @@ TEST(MessageTest, InitializationErrorString) { |
EXPECT_EQ("a, b, c", message.InitializationErrorString()); |
} |
-TEST(MessageTest, DynamicCastToGenerated) { |
- unittest::TestAllTypes test_all_types; |
- |
- google::protobuf::Message* test_all_types_pointer = &test_all_types; |
- EXPECT_EQ(&test_all_types, |
- google::protobuf::internal::DynamicCastToGenerated<unittest::TestAllTypes>( |
- test_all_types_pointer)); |
- EXPECT_EQ(NULL, |
- google::protobuf::internal::DynamicCastToGenerated<unittest::TestRequired>( |
- test_all_types_pointer)); |
- |
- const google::protobuf::Message* test_all_types_pointer_const = &test_all_types; |
- EXPECT_EQ( |
- &test_all_types, |
- google::protobuf::internal::DynamicCastToGenerated<const unittest::TestAllTypes>( |
- test_all_types_pointer_const)); |
- EXPECT_EQ( |
- NULL, |
- google::protobuf::internal::DynamicCastToGenerated<const unittest::TestRequired>( |
- test_all_types_pointer_const)); |
-} |
- |
-#ifdef PROTOBUF_HAS_DEATH_TEST // death tests do not work on Windows yet. |
+#ifdef PROTOBUF_HAS_DEATH_TEST |
TEST(MessageTest, SerializeFailsIfNotInitialized) { |
unittest::TestRequired message; |
@@ -245,45 +222,8 @@ TEST(MessageTest, CheckInitialized) { |
"fields: a, b, c"); |
} |
-TEST(MessageTest, CheckOverflow) { |
- unittest::TestAllTypes message; |
- // Create a message with size just over 2GB. This triggers integer overflow |
- // when computing message size. |
- const string data(1024, 'x'); |
- Cord one_megabyte; |
- for (int i = 0; i < 1024; i++) { |
- one_megabyte.Append(data); |
- } |
- |
- for (int i = 0; i < 2 * 1024 + 1; ++i) { |
- message.add_repeated_cord()->CopyFrom(one_megabyte); |
- } |
- |
- Cord serialized; |
- EXPECT_FALSE(message.AppendToCord(&serialized)); |
-} |
- |
#endif // PROTOBUF_HAS_DEATH_TEST |
-namespace { |
- |
-class NegativeByteSize : public unittest::TestRequired { |
- public: |
- virtual int ByteSize() const { return -1; } |
-}; |
- |
-} // namespace |
- |
-TEST(MessageTest, SerializationFailsOnNegativeByteSize) { |
- NegativeByteSize message; |
- string string_output; |
- EXPECT_FALSE(message.AppendPartialToString(&string_output)); |
- |
- io::ArrayOutputStream coded_raw_output(NULL, 100); |
- io::CodedOutputStream coded_output(&coded_raw_output); |
- EXPECT_FALSE(message.SerializePartialToCodedStream(&coded_output)); |
-} |
- |
TEST(MessageTest, BypassInitializationCheckOnSerialize) { |
unittest::TestRequired message; |
io::ArrayOutputStream raw_output(NULL, 0); |
@@ -389,61 +329,6 @@ TEST(MessageTest, ParsingMerge) { |
unittest::TestParsingMerge::repeated_ext)); |
} |
-TEST(MessageTest, MergeFrom) { |
- unittest::TestAllTypes source; |
- unittest::TestAllTypes dest; |
- |
- // Optional fields |
- source.set_optional_int32(1); // only source |
- source.set_optional_int64(2); // both source and dest |
- dest.set_optional_int64(3); |
- dest.set_optional_uint32(4); // only dest |
- |
- // Optional fields with defaults |
- source.set_default_int32(13); // only source |
- source.set_default_int64(14); // both source and dest |
- dest.set_default_int64(15); |
- dest.set_default_uint32(16); // only dest |
- |
- // Repeated fields |
- source.add_repeated_int32(5); // only source |
- source.add_repeated_int32(6); |
- source.add_repeated_int64(7); // both source and dest |
- source.add_repeated_int64(8); |
- dest.add_repeated_int64(9); |
- dest.add_repeated_int64(10); |
- dest.add_repeated_uint32(11); // only dest |
- dest.add_repeated_uint32(12); |
- |
- dest.MergeFrom(source); |
- |
- // Optional fields: source overwrites dest if source is specified |
- EXPECT_EQ(1, dest.optional_int32()); // only source: use source |
- EXPECT_EQ(2, dest.optional_int64()); // source and dest: use source |
- EXPECT_EQ(4, dest.optional_uint32()); // only dest: use dest |
- EXPECT_EQ(0, dest.optional_uint64()); // neither: use default |
- |
- // Optional fields with defaults |
- EXPECT_EQ(13, dest.default_int32()); // only source: use source |
- EXPECT_EQ(14, dest.default_int64()); // source and dest: use source |
- EXPECT_EQ(16, dest.default_uint32()); // only dest: use dest |
- EXPECT_EQ(44, dest.default_uint64()); // neither: use default |
- |
- // Repeated fields: concatenate source onto the end of dest |
- ASSERT_EQ(2, dest.repeated_int32_size()); |
- EXPECT_EQ(5, dest.repeated_int32(0)); |
- EXPECT_EQ(6, dest.repeated_int32(1)); |
- ASSERT_EQ(4, dest.repeated_int64_size()); |
- EXPECT_EQ(9, dest.repeated_int64(0)); |
- EXPECT_EQ(10, dest.repeated_int64(1)); |
- EXPECT_EQ(7, dest.repeated_int64(2)); |
- EXPECT_EQ(8, dest.repeated_int64(3)); |
- ASSERT_EQ(2, dest.repeated_uint32_size()); |
- EXPECT_EQ(11, dest.repeated_uint32(0)); |
- EXPECT_EQ(12, dest.repeated_uint32(1)); |
- ASSERT_EQ(0, dest.repeated_uint64_size()); |
-} |
- |
TEST(MessageFactoryTest, GeneratedFactoryLookup) { |
EXPECT_EQ( |
MessageFactory::generated_factory()->GetPrototype( |