diff options
author | Jon Skeet <jonskeet@google.com> | 2016-01-15 14:18:16 +0000 |
---|---|---|
committer | Jon Skeet <jonskeet@google.com> | 2016-01-15 14:18:16 +0000 |
commit | b1ea15f7a5480fe946165b0257de4981edca1c82 (patch) | |
tree | ce1eae7636824d4137c64b2cad8a579d4836eee3 /csharp/src/Google.Protobuf.Test/JsonParserTest.cs | |
parent | 8866d6a80ed30e1ff32f1c5420f1a803c26fa13a (diff) | |
download | protobuf-b1ea15f7a5480fe946165b0257de4981edca1c82.tar.gz protobuf-b1ea15f7a5480fe946165b0257de4981edca1c82.tar.bz2 protobuf-b1ea15f7a5480fe946165b0257de4981edca1c82.zip |
Make sure that
"valueField": null
is parsed appropriately, i.e. that it remembers that the field is set.
Diffstat (limited to 'csharp/src/Google.Protobuf.Test/JsonParserTest.cs')
-rw-r--r-- | csharp/src/Google.Protobuf.Test/JsonParserTest.cs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/csharp/src/Google.Protobuf.Test/JsonParserTest.cs b/csharp/src/Google.Protobuf.Test/JsonParserTest.cs index bfbde364..612a7b12 100644 --- a/csharp/src/Google.Protobuf.Test/JsonParserTest.cs +++ b/csharp/src/Google.Protobuf.Test/JsonParserTest.cs @@ -124,7 +124,9 @@ namespace Google.Protobuf [Test] public void SingularWrappers_ExplicitNulls() { - var message = new TestWellKnownTypes(); + // When we parse the "valueField": null part, we remember it... basically, it's one case + // where explicit default values don't fully roundtrip. + var message = new TestWellKnownTypes { ValueField = Value.ForNull() }; var json = new JsonFormatter(new JsonFormatter.Settings(true)).Format(message); var parsed = JsonParser.Default.Parse<TestWellKnownTypes>(json); Assert.AreEqual(message, parsed); @@ -151,6 +153,14 @@ namespace Google.Protobuf } [Test] + public void ExplicitNullValue() + { + string json = "{\"valueField\": null}"; + var message = JsonParser.Default.Parse<TestWellKnownTypes>(json); + Assert.AreEqual(new TestWellKnownTypes { ValueField = Value.ForNull() }, message); + } + + [Test] public void BytesWrapper_Standalone() { ByteString data = ByteString.CopyFrom(1, 2, 3); |