public void Given_ComplexType_Expect_RootNode_WithChildNodes() { // Arrange Type type = typeof(DemoObject); string rootNodeName = "DemoObject"; // Act IComplexObjectGraphNode node = (IComplexObjectGraphNode)_objectGrapher.BuildObjectGraph(type, rootNodeName); // Assert node.ChildrenObjectGraphNodes.Should().NotBeEmpty(); }
public void Given_ComplexType_With_ComplexChildren_Expect_RootNode_WithDeepChildNodes() { // Arrange Type type = typeof(DemoComplexObject); string rootNodeName = "DemoComplexObject"; // Act IComplexObjectGraphNode node = (IComplexObjectGraphNode)_objectGrapher.BuildObjectGraph(type, rootNodeName); // Assert IEnumerable <IComplexObjectGraphNode> complexChildrenNodes = node.ChildrenObjectGraphNodes .Where(o => o is IComplexObjectGraphNode) .Select(o => (IComplexObjectGraphNode)o) .ToList(); complexChildrenNodes.Should().NotBeEmpty(); }
public void Given_ComplexType_With_ComplexChildrenCollection_Expect_RootNode_WithDeepChildNodes() { // Arrange Type type = typeof(DemoComplexCollectionsObject); string rootNodeName = "DemoComplexCollectionsObject"; // Act IComplexObjectGraphNode node = (IComplexObjectGraphNode)_objectGrapher.BuildObjectGraph(type, rootNodeName); // Assert IComplexObjectGraphNode complexNode = node.ChildrenObjectGraphNodes .Where(o => o is IComplexObjectGraphNode) .Select(o => (IComplexObjectGraphNode)o) .Where(o => o.NodeName == "DemoComplexObjects") .SingleOrDefault(); complexNode.ChildrenObjectGraphNodes.Should().HaveCount(1); complexNode.ChildrenObjectGraphNodes.First().NodeType.Should().Be(typeof(DemoComplexObject)); }