Beispiel #1
0
        public void RollUpAggregate_CountNodesWith4Param()
        {
            var r = new MapNode(new MapTree(), "r");
            var c1 = new MapNode(r, "c1");
            var c11 = new MapNode(c1, "c11");
            var c12 = new MapNode(c1, "c12");
            var c13 = new MapNode(c1, "c13");
            var c2 = new MapNode(r, "c2");
            var c3 = new MapNode(r, "c3", NodePosition.Left);
            var c31 = new MapNode(c3, "c31");
            var c32 = new MapNode(c3, "c32");

            int count = r.RollUpAggregate(n => 1, (a, b) => a + b, (node, i) => { }, node => false);
            Assert.AreEqual(9, count);
        }
Beispiel #2
0
        public void ForEachSameLevelNode_AllBranchesHaveLevel2()
        {
            var r = new MapNode(new MapTree(), "r");
            var c1 = new MapNode(r, "c1");
            var c11 = new MapNode(c1, "c11");
            var c12 = new MapNode(c1, "c12");
            var c13 = new MapNode(c1, "c13");
            var c14 = new MapNode(c1, "c14");
            var c15 = new MapNode(c1, "c15");
            var c2 = new MapNode(r, "c2");
            var c21 = new MapNode(c2, "c21");
            var c3 = new MapNode(r, "c3", NodePosition.Left);
            c3.Folded = true;
            var c31 = new MapNode(c3, "c31");
            var c32 = new MapNode(c3, "c32");

            c13.ForEachSameLevelNode(n => n.Text = "Updated");

            Assert.AreEqual(7, r.RollUpAggregate(n => n.Text == "Updated" ? 1 : 0, (i, i1) => i + i1));
        }
Beispiel #3
0
        public void RollUpAggregate_CountNodesUnfolded()
        {
            var r = new MapNode(new MapTree(), "r");
            var c1 = new MapNode(r, "c1");
            var c11 = new MapNode(c1, "c11");
            var c12 = new MapNode(c1, "c12");
            var c13 = new MapNode(c1, "c13");
            var c2 = new MapNode(r, "c2");
            var c3 = new MapNode(r, "c3", NodePosition.Left);
            c3.Folded = true;
            var c31 = new MapNode(c3, "c31");
            var c32 = new MapNode(c3, "c32");

            int count = r.RollUpAggregate(n => 1, (a, b) => a + b, (node, i) => { node.Text = i.ToString(); }, node => node.Folded);

            Assert.AreEqual(7, count);
            Assert.AreEqual("4", c1.Text);
        }