Example #1
0
        public void ShouldHandleNullFieldsCorrectly()
        {
            var value = new CanBeRecursive();
            var read  = _reader.Read(value);

            Assert.Collection(read.Properties,
                              p =>
            {
                Assert.Equal(typeof(CanBeRecursive), p.Type);
                Assert.Equal(nameof(CanBeRecursive.Next), p.Name);
                Assert.Null(p.Value);
            }
                              );
        }
Example #2
0
        public void CanReadRecursiveObjects()
        {
            var first  = new CanBeRecursive();
            var second = new CanBeRecursive();
            var third  = new CanBeRecursive();

            first.Next  = second;
            second.Next = third;
            third.Next  = first;
            var read = _reader.Read(first);

            Assert.Equal(typeof(CanBeRecursive), read.Type);
            Assert.Equal(nameof(CanBeRecursive), read.Name);
            Assert.Equal(first, read.Value);
            Assert.NotEmpty(read.Properties);
            Assert.Null(read.Format);
            Assert.Null(read.Formatter);
        }