public void QuotesInPropertyValuesAreEscaped()
        {
            var c = new ClassWithPrimitiveProperties
            {
                StringProperty = "She said, \"Hello!\""
            };

            _reflectionFormatter.FormatObject(c, _formatWriter);

            Assert.Contains("StringProperty:\"She said, \"\"Hello!\"\"\"", _formatterOutput.ToString());
        }
        public void PrimitivePropertiesAreFormattedInline()
        {
            var c = new ClassWithPrimitiveProperties
            {
                DateTimeProperty = DateTime.Parse("12/31/2017"),
                IntProperty      = 10000,
                StringProperty   = "foo"
            };

            _reflectionFormatter.FormatObject(c, _formatWriter);

            string output = _formatterOutput.ToString();

            Assert.DoesNotContain("\r\n", output.Trim());
            Assert.Contains("IntProperty:10000", output);
            Assert.Contains("StringProperty:foo", output);
            Assert.Contains("DateTimeProperty:\"12/31/2017 12:00:00 AM\"", output);
        }
Example #3
0
        private static void VerifyTreeForClassWithAList <T>(IDataNode dataNode, T expected, Func <T, object> extractor, bool duplicateEntryCount) where T : new()
        {
            dataNode.Should().BeOfType <UserTypeDataNode <T> >();

            dataNode.Edges.Should().HaveCount(1);

            VerifyEdge(dataNode.Edges[0], expected, extractor);

            ListNode <ClassWithPrimitiveProperties> listNode = dataNode.Edges[0].ChildNode.Should()
                                                               .BeOfType <ListNode <ClassWithPrimitiveProperties> >()
                                                               .Subject;

            FieldInfo duplicateEntryCountField = typeof(ListNode <ClassWithPrimitiveProperties>)
                                                 .GetField("duplicateEntryCount", BindingFlags.NonPublic | BindingFlags.Instance);

            duplicateEntryCountField.GetValue(listNode).Should().Be(duplicateEntryCount);

            ClassWithPrimitiveProperties.BuildSample().VerifyTree(listNode.ChildNode);
        }
        public void CollectionsAreFormattedAsArray()
        {
            var elt = new ClassWithPrimitiveProperties
            {
                IntProperty    = 2,
                StringProperty = "two"
            };
            var list = new List <ClassWithPrimitiveProperties>
            {
                elt,
                elt
            };

            _reflectionFormatter.FormatObject(list, _formatWriter);

            string output = _formatterOutput.ToString().Trim();

            Assert.StartsWith("[", output);
            Assert.EndsWith("]", output);
        }
Example #5
0
 public static ClassWithPaddedProperties BuildSample() => new ClassWithPaddedProperties
 {
     Byte  = 0xAB,
     Child = ClassWithPrimitiveProperties.BuildSample()
 };
Example #6
0
        public void Test_Building_A_Tree_For_A_Class_With_Primitive_Properties()
        {
            IDataNode rootNode = TreeBuilder.BuildTreeForType(typeof(ClassWithPrimitiveProperties));

            ClassWithPrimitiveProperties.BuildSample().VerifyTree(rootNode);
        }
Example #7
0
 public static ClassWithNestedClassWithPrimitiveProperties BuildSample() => new ClassWithNestedClassWithPrimitiveProperties
 {
     FlatClass = ClassWithPrimitiveProperties.BuildSample(),
     Byte      = 12
 };