Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        public void DecorateObjectWithList()
        {
            var item          = new ObjectWithList();
            var decoratedItem = _consumerTranslator.Decorate(item);

            decoratedItem.VerifyAfterDecoration();
        }
Ejemplo n.º 3
0
        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]);
        }
Ejemplo n.º 4
0
        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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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]);
        }
Ejemplo n.º 7
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);
        }