public void CombineChildNodesWorksForSingleEmptyNode()
 {
     // $expand=1($expand=2;), 1
     ExpandToken innerExpand = new ExpandToken(new ExpandTermToken[] { new ExpandTermToken(new NonSystemToken("2", null, null)) });
     ExpandTermToken outerExpandTerm1 = new ExpandTermToken(new NonSystemToken("1", null, null),
                                                            null /*selectOption*/,
                                                            innerExpand);
     ExpandTermToken outerExpandTerm2 = new ExpandTermToken(new NonSystemToken("1", null, null));
     ExpandTreeNormalizer expandTreeNormalizer = new ExpandTreeNormalizer();
     IEnumerable<ExpandTermToken> combinedChildren = expandTreeNormalizer.CombineChildNodes(outerExpandTerm1, outerExpandTerm2);
     combinedChildren.Single().ShouldBeExpandTermToken("2", false);
 }
 public void CombineChildNodesWorksForTwoPopulatedNodes()
 {
     // $expand=1($expand=2), 1($expand=3)
     ExpandTermToken innerExpandTerm1 = new ExpandTermToken(new NonSystemToken("2", null, null));
     ExpandToken innerExpand1 = new ExpandToken(new ExpandTermToken[] { innerExpandTerm1 });
     ExpandTermToken outerExpandTerm1 = new ExpandTermToken(new NonSystemToken("1", null, null),
                                                            null /*selectOption*/,
                                                            innerExpand1);
     ExpandTermToken innerExpandTerm2 = new ExpandTermToken(new NonSystemToken("3", null, null));
     ExpandToken innerExpand2 = new ExpandToken(new ExpandTermToken[] { innerExpandTerm2 });
     ExpandTermToken outerExpandTerm2 = new ExpandTermToken(new NonSystemToken("1", null, null),
                                                            null /*selectOption*/,
                                                            innerExpand2);
     ExpandTreeNormalizer expandTreeNormalizer = new ExpandTreeNormalizer();
     IEnumerable<ExpandTermToken> combinedChildren = expandTreeNormalizer.CombineChildNodes(outerExpandTerm1, outerExpandTerm2);
     combinedChildren.Should().Contain(innerExpandTerm1).And.Contain(innerExpandTerm2);
 }
 public void CombineChildNodesWorksForTwoEmptyNodes()
 {
     // $expand=1
     ExpandTermToken expandTerm = new ExpandTermToken(new NonSystemToken("1", null, null));
     ExpandTreeNormalizer expandTreeNormalizer = new ExpandTreeNormalizer();
     IEnumerable<ExpandTermToken> combinedChildren = expandTreeNormalizer.CombineChildNodes(expandTerm, expandTerm);
     combinedChildren.Count().Should().Be(0);
 }