Example #1
0
        public void SerializeDeserializeExcludeNulls()
        {
            var dto = new ExtensionTestDTO {
                Key = "Hello", Value = "World", AdditionalValues = new Dictionary <string, object> {
                    { "Test", null }
                }
            };
            var output = JsonSerializer.Generic.Utf16.Serialize(dto);

            Assert.DoesNotContain("Test", output);
        }
Example #2
0
        public void SerializeDeserializeUtf16NoDuplicate()
        {
            var dto = new ExtensionTestDTO {
                Key = "Hello", Value = "World", AdditionalValues = new Dictionary <string, object> {
                    { "Key", 1.0m }
                }
            };
            var output = JsonSerializer.Generic.Utf16.Serialize(dto);

            Assert.Contains("World", output);
            Assert.DoesNotContain("1.0", (dynamic)output);
        }
Example #3
0
        public void SerializeDeserializeUtf8()
        {
            var dto = new ExtensionTestDTO {
                Key = "Hello", Value = "World", AdditionalValues = new Dictionary <string, object> {
                    { "Test", 1.0m }
                }
            };
            var output       = JsonSerializer.Generic.Utf8.Serialize(dto);
            var deserialized = JsonSerializer.Generic.Utf8.Deserialize <ExtensionTestDTO>(output);

            Assert.True(deserialized.AdditionalValues.TryGetValue("Test", out var value));
            Assert.Equal(1.0m, (decimal)(dynamic)value);
        }
Example #4
0
        public void SerializeDeserializeIncludeNulls()
        {
            var dto = new ExtensionTestDTO {
                Key = "Hello", Value = "World", AdditionalValues = new Dictionary <string, object> {
                    { "Test", null }
                }
            };
            var output = JsonSerializer.Generic.Utf16.Serialize <ExtensionTestDTO, IncludeNullsOriginalCaseResolver <char> >(dto);

            Assert.Contains("null", output);
            var deserialized = JsonSerializer.Generic.Utf16.Deserialize <ExtensionTestDTO, IncludeNullsOriginalCaseResolver <char> >(output);

            Assert.True(deserialized.AdditionalValues.ContainsKey("Test"));
        }