示例#1
0
        public void DocumentMapStringEnumerable()
        {
            IBaseTree tree = setUpTree();

            IDataTree dataTree = DataTreeBuilder.CreateDocumentMappedTree(tree);

            DataTreeBuilder.AddAllToDataTree(dataTree, toMapEnumerable);

            //make sure the root has the correct number of children
            Assert.AreEqual(dataTree.Root.Children.Count, 2);

            //make sure each of the children has the correct weight
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "tree").FirstOrDefault().Weight, 3);
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "others").FirstOrDefault().Weight, 2);

            //make sure a branch on the content tree which is not existent in the mapped tree does not exist
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "nonexistent").FirstOrDefault(), null);

            //make sure each child's connections have their own correct weight
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "tree").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "content").FirstOrDefault().Weight, 1);
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "tree").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "mapped").FirstOrDefault().Weight, 1);

            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "others").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "series").FirstOrDefault().Weight, 1);
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "others").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "going").FirstOrDefault().Weight, 1);

            //make sure children connections do not cross
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "others").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "content").FirstOrDefault(), null);

            //make sure leaf children do not have any connections
            Assert.AreEqual(dataTree.Root.Children.Where(c => c.EndPoint.Keyword == "tree").FirstOrDefault().EndPoint.Children.Where(x => x.EndPoint.Keyword == "content").FirstOrDefault().EndPoint.Children.Count, 0);
        }
示例#2
0
        public void DocumentMapNonexistentContentEnumberable()
        {
            IBaseTree tree = setUpTree();

            IDataTree dataTree = DataTreeBuilder.CreateDocumentMappedTree(tree);

            DataTreeBuilder.AddAllToDataTree(dataTree, null);
        }
示例#3
0
        public void DocumentMapChangeBaseTree()
        {
            IBaseTree tree = setUpTree();

            IDataTree dataTree = DataTreeBuilder.CreateDocumentMappedTree(tree);

            DataTreeBuilder.AddAllToDataTree(dataTree, toMapEnumerable);

            dataTree.SetBaseTree(null);
            Assert.AreEqual(dataTree.GetBaseTree(), null);
        }
示例#4
0
 public void DocumentMapNonexistentDataTreeEnumerable()
 {
     DataTreeBuilder.AddAllToDataTree(null, toMapEnumerable);
 }