From 1a56251a3582d8b060ca65db6ef1d178c744f81f Mon Sep 17 00:00:00 2001 From: Caleb Welton Date: Sat, 19 Nov 2016 10:54:13 -0800 Subject: oneOf fix for JsonFormat includingDefaultValueFields --- .../java/com/google/protobuf/util/JsonFormatTest.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'java/util/src/test/java/com/google/protobuf/util/JsonFormatTest.java') diff --git a/java/util/src/test/java/com/google/protobuf/util/JsonFormatTest.java b/java/util/src/test/java/com/google/protobuf/util/JsonFormatTest.java index 32739d44..823ed971 100644 --- a/java/util/src/test/java/com/google/protobuf/util/JsonFormatTest.java +++ b/java/util/src/test/java/com/google/protobuf/util/JsonFormatTest.java @@ -1261,6 +1261,23 @@ public class JsonFormatTest extends TestCase { + " }\n" + "}", JsonFormat.printer().includingDefaultValueFields().print(mapMessage)); + + TestOneof oneofMessage = TestOneof.getDefaultInstance(); + assertEquals("{\n}", JsonFormat.printer().print(oneofMessage)); + assertEquals("{\n}", JsonFormat.printer().includingDefaultValueFields().print(oneofMessage)); + + oneofMessage = TestOneof.newBuilder().setOneofInt32(42).build(); + assertEquals("{\n \"oneofInt32\": 42\n}", + JsonFormat.printer().print(oneofMessage)); + assertEquals("{\n \"oneofInt32\": 42\n}", + JsonFormat.printer().includingDefaultValueFields().print(oneofMessage)); + + TestOneof.Builder oneofBuilder = TestOneof.newBuilder(); + mergeFromJson("{\n" + " \"oneofNullValue\": null \n" + "}", oneofBuilder); + oneofMessage = oneofBuilder.build(); + assertEquals("{\n \"oneofNullValue\": null\n}", JsonFormat.printer().print(oneofMessage)); + assertEquals("{\n \"oneofNullValue\": null\n}", + JsonFormat.printer().includingDefaultValueFields().print(oneofMessage)); } public void testPreservingProtoFieldNames() throws Exception { -- cgit v1.2.3