Index: third_party/protobuf/java/compatibility_tests/v2.5.0/tests/src/main/java/com/google/protobuf/test/DynamicMessageTest.java |
diff --git a/third_party/protobuf/java/core/src/test/java/com/google/protobuf/DynamicMessageTest.java b/third_party/protobuf/java/compatibility_tests/v2.5.0/tests/src/main/java/com/google/protobuf/test/DynamicMessageTest.java |
similarity index 80% |
copy from third_party/protobuf/java/core/src/test/java/com/google/protobuf/DynamicMessageTest.java |
copy to third_party/protobuf/java/compatibility_tests/v2.5.0/tests/src/main/java/com/google/protobuf/test/DynamicMessageTest.java |
index 8f3a74c154c005f138e702393bcfe073d9efc452..00230678fb50ed29c26364fbdd01b73f9054ba4a 100644 |
--- a/third_party/protobuf/java/core/src/test/java/com/google/protobuf/DynamicMessageTest.java |
+++ b/third_party/protobuf/java/compatibility_tests/v2.5.0/tests/src/main/java/com/google/protobuf/test/DynamicMessageTest.java |
@@ -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 |
@@ -28,18 +28,15 @@ |
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
-package com.google.protobuf; |
+package com.google.protobuf.test; |
+import com.google.protobuf.*; |
-import com.google.protobuf.Descriptors.EnumDescriptor; |
-import com.google.protobuf.Descriptors.FieldDescriptor; |
-import com.google.protobuf.Descriptors.OneofDescriptor; |
import protobuf_unittest.UnittestProto.TestAllExtensions; |
import protobuf_unittest.UnittestProto.TestAllTypes; |
import protobuf_unittest.UnittestProto.TestEmptyMessage; |
import protobuf_unittest.UnittestProto.TestPackedTypes; |
import junit.framework.TestCase; |
- |
import java.util.Arrays; |
/** |
@@ -245,19 +242,6 @@ public class DynamicMessageTest extends TestCase { |
DynamicMessage copy = DynamicMessage.newBuilder(message).build(); |
reflectionTester.assertAllFieldsSetViaReflection(copy); |
- |
- // Test oneof behavior |
- FieldDescriptor bytesField = |
- TestAllTypes.getDescriptor().findFieldByName("oneof_bytes"); |
- FieldDescriptor uint32Field = |
- TestAllTypes.getDescriptor().findFieldByName("oneof_uint32"); |
- assertTrue(copy.hasField(bytesField)); |
- assertFalse(copy.hasField(uint32Field)); |
- DynamicMessage copy2 = |
- DynamicMessage.newBuilder(message).setField(uint32Field, 123).build(); |
- assertFalse(copy2.hasField(bytesField)); |
- assertTrue(copy2.hasField(uint32Field)); |
- assertEquals(123, copy2.getField(uint32Field)); |
} |
public void testToBuilder() throws Exception { |
@@ -278,49 +262,4 @@ public class DynamicMessageTest extends TestCase { |
assertEquals(Arrays.asList(unknownFieldVal), |
derived.getUnknownFields().getField(unknownFieldNum).getVarintList()); |
} |
- |
- public void testDynamicOneofMessage() throws Exception { |
- DynamicMessage.Builder builder = |
- DynamicMessage.newBuilder(TestAllTypes.getDescriptor()); |
- OneofDescriptor oneof = TestAllTypes.getDescriptor().getOneofs().get(0); |
- assertFalse(builder.hasOneof(oneof)); |
- assertSame(null, builder.getOneofFieldDescriptor(oneof)); |
- |
- reflectionTester.setAllFieldsViaReflection(builder); |
- assertTrue(builder.hasOneof(oneof)); |
- FieldDescriptor field = oneof.getField(3); |
- assertSame(field, builder.getOneofFieldDescriptor(oneof)); |
- |
- DynamicMessage message = builder.buildPartial(); |
- assertTrue(message.hasOneof(oneof)); |
- |
- DynamicMessage.Builder mergedBuilder = |
- DynamicMessage.newBuilder(TestAllTypes.getDescriptor()); |
- FieldDescriptor mergedField = oneof.getField(0); |
- mergedBuilder.setField(mergedField, 123); |
- assertTrue(mergedBuilder.hasField(mergedField)); |
- mergedBuilder.mergeFrom(message); |
- assertTrue(mergedBuilder.hasField(field)); |
- assertFalse(mergedBuilder.hasField(mergedField)); |
- |
- builder.clearOneof(oneof); |
- assertSame(null, builder.getOneofFieldDescriptor(oneof)); |
- message = builder.build(); |
- assertSame(null, message.getOneofFieldDescriptor(oneof)); |
- } |
- |
- // Regression test for a bug that makes setField() not work for repeated |
- // enum fields. |
- public void testSettersForRepeatedEnumField() throws Exception { |
- DynamicMessage.Builder builder = |
- DynamicMessage.newBuilder(TestAllTypes.getDescriptor()); |
- FieldDescriptor repeatedEnumField = |
- TestAllTypes.getDescriptor().findFieldByName( |
- "repeated_nested_enum"); |
- EnumDescriptor enumDescriptor = TestAllTypes.NestedEnum.getDescriptor(); |
- builder.setField(repeatedEnumField, enumDescriptor.getValues()); |
- DynamicMessage message = builder.build(); |
- assertEquals( |
- enumDescriptor.getValues(), message.getField(repeatedEnumField)); |
- } |
} |