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); }
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); }
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); }
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")); }