public void WriteObjectWithList() { const string expected = @"{""IntList"":[1,2],""ObjectList"":[{""IntValue"":1},{""IntValue"":2}],""StringList"":[""a"",""b""]}"; ObjectWithList obj = new ObjectWithList { IntList = new List <int> { 1, 2 }, ObjectList = new List <IntObject> { new IntObject { IntValue = 1 }, new IntObject { IntValue = 2 } }, StringList = new List <string> { "a", "b" } }; JsonSerializerOptions options = new JsonSerializerOptions(); options.SetupExtensions(); string actual = JsonSerializer.Serialize(obj, obj.GetType(), options); Assert.Equal(expected, actual); }
public void DecorateObjectWithList() { var item = new ObjectWithList(); var decoratedItem = _consumerTranslator.Decorate(item); decoratedItem.VerifyAfterDecoration(); }
public void ReadObjectWithList() { const string json = @"{""IntList"":[1,2],""ObjectList"":[{""IntValue"":1},{""IntValue"":2}],""StringList"":[""a"",""b""]}"; JsonSerializerOptions options = new JsonSerializerOptions(); options.SetupExtensions(); ObjectWithList obj = JsonSerializer.Deserialize <ObjectWithList>(json, options); Assert.NotNull(obj); Assert.NotNull(obj.IntList); Assert.Equal(2, obj.IntList.Count); Assert.Equal(1, obj.IntList[0]); Assert.Equal(2, obj.IntList[1]); Assert.NotNull(obj.ObjectList); Assert.Equal(2, obj.ObjectList.Count); Assert.NotNull(obj.ObjectList[0]); Assert.Equal(1, obj.ObjectList[0].IntValue); Assert.NotNull(obj.ObjectList[1]); Assert.Equal(2, obj.ObjectList[1].IntValue); Assert.NotNull(obj.StringList); Assert.Equal(2, obj.StringList.Count); Assert.Equal("a", obj.StringList[0]); Assert.Equal("b", obj.StringList[1]); }
public void ObjectWithListDoesNotMatch() { var a = new ObjectWithList { Number = 2, String = "string", Decimal = 20.000000000000000000001, List = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 } }; var b = new ObjectWithList { Number = 2, String = "string", Decimal = 20.000000000000000000001, List = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8 } }; var result = _calculator.Diff(a, b) as ObjectDiff; result.WithoutMatching(); Assert.False(result.ValuesMatch); }
public void ObjectWithListMatches() { var a = new ObjectWithList { Number = 2, String = "string", Decimal = 20.000000000000000000001, List = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 } }; var b = new ObjectWithList { Number = 2, String = "string", Decimal = 20.000000000000000000001, List = new List <int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 } }; var result = _calculator.Diff(a, b); Assert.True(result.ValuesMatch); }
public void DeserializesAsObjectClassWithList() { var serializer = new EventSerializer(); var obj = new ObjectWithList { Items = new List <int> { 1 } }; var meta = serializer.Serialize(out var hasMetadata, obj).ToAsyncSafe(); serializer.ProcessMetadataLog(meta); var data = serializer.Serialize(out hasMetadata, obj); var deserializer = new EventDeserializer(new TypeSerializersTest.ToDynamicMapper()); Assert.False(deserializer.Deserialize(out dynamic obj2, data)); deserializer.ProcessMetadataLog(meta); Assert.True(deserializer.Deserialize(out obj2, data)); Assert.Equal(1, obj2.Items[0]); }
public void DeserializesClassWithList() { var serializer = new EventSerializer(); var obj = new ObjectWithList { Items = new List <int> { 1 } }; var meta = serializer.Serialize(out var hasMetadata, obj).ToAsyncSafe(); serializer.ProcessMetadataLog(meta); var data = serializer.Serialize(out hasMetadata, obj); var deserializer = new EventDeserializer(); Assert.False(deserializer.Deserialize(out var obj2, data)); deserializer.ProcessMetadataLog(meta); Assert.True(deserializer.Deserialize(out obj2, data)); Assert.Equal(obj, obj2); }