public void Test_ReadWrite()
        {
            ClusterTree rt1  = new ClusterTree();
            RangeNode   root = new RangeNode(5);

            rt1.Root = root;
            for (int i = 0; i < 5; ++i)
            {
                root.Children[i] = new RangeNode(0)
                {
                    UpperLimit = 0.1f * i
                };
            }
            rt1.Version.UserDescription = "Bla bla";

            string fileName = Path.Combine(_outDir, "ClusterTree.dat");

            rt1.Write(fileName);
            ClusterTree rt2 = ClusterTree.Read(fileName);

            Assert.AreEqual(rt1.Version, rt2.Version);
            Assert.IsTrue(CompareTrees <int, int> .Compare(rt1, rt1.Root, rt2, rt2.Root,
                                                           (t1, n1, t2, n2) =>
            {
                return(((RangeNode)n1).UpperLimit == ((RangeNode)n2).UpperLimit);
            }));
        }
Example #2
0
        public void Test_ValueDiffers()
        {
            int       nodeCount;
            TestNode1 root1;

            nodeCount = 0;
            CreateTestTree1(out root1, 4, 2, ref nodeCount);
            TestNode2 root2;

            nodeCount = 0;
            CreateTestTree2(out root2, 4, 2, ref nodeCount);

            root2.Children[1].Children[0].DoubleValue = -1; // Change the value

            CompareTrees <TestNode1, TestNode1, int, TestNode2, TestNode2, int> comp =
                new CompareTrees <TestNode1, TestNode1, int, TestNode2, TestNode2, int>();
            bool result = comp.Compare(root1, root1, root2, root2, (t1, n1, t2, n2) => n1.IntValue == n2.DoubleValue);

            Assert.IsFalse(result);
            Assert.AreEqual(CompareTrees.ResultKind.ValueDiffers, comp.Result);
            Assert.AreEqual(9, comp.DiffersAt);

            // Test helper functions as well.
            result = CompareTrees <int, int> .Compare(root1, root1, root2, root2, (t1, n1, t2, n2) => n1.IntValue == n2.DoubleValue);

            Assert.IsFalse(result);

            result = CompareTrees <int, int> .Compare(root1, root1, root2, root2);

            Assert.IsFalse(result);
        }
Example #3
0
        public void Test_Equal()
        {
            int       nodeCount;
            TestNode1 root1;

            nodeCount = 0;
            CreateTestTree1(out root1, 4, 3, ref nodeCount);
            TestNode2 root2;

            nodeCount = 0;
            CreateTestTree2(out root2, 4, 3, ref nodeCount);

            CompareTrees <TestNode1, TestNode1, int, TestNode2, TestNode2, int> comp =
                new CompareTrees <TestNode1, TestNode1, int, TestNode2, TestNode2, int>();
            bool result = comp.Compare(root1, root1, root2, root2, (t1, n1, t2, n2) => n1.IntValue == n2.DoubleValue);

            Assert.IsTrue(result);
            Assert.AreEqual(CompareTrees.ResultKind.Equal, comp.Result);

            // Test helper functions as well.
            result = CompareTrees <int, int> .Compare(root1, root1, root2, root2, (t1, n1, t2, n2) => n1.IntValue == n2.DoubleValue);

            Assert.IsTrue(result);

            result = CompareTrees <int, int> .Compare(root1, root1, root2, root2);

            Assert.IsTrue(result);
        }
Example #4
0
        protected void ASPxButton1_Click(object sender, EventArgs e)
        {
            ASPxTreeList1.Columns.Clear();

            //tl.Columns[0].Caption = "Customer";

            TreeView1.Nodes.Clear();
            int rschId;
            if (ASPxComboBox1.SelectedItem.Text != "")
            {
                //ASPxTreeList1.BeginUpdate();
                //ASPxTreeList1.Columns.Add();
                //tl.Columns[0].Caption = "Customer";
                //tl.Columns[0].VisibleIndex = 0;
                //tl.Columns.Add();
                //tl.Columns[1].Caption = "Location";
                //tl.Columns[1].VisibleIndex = 1;
                //tl.Columns.Add();
                //tl.Columns[2].Caption = "Phone";
                //tl.Columns[2].VisibleIndex = 2;
                //tl.EndUpdate();

                ASPxTreeList1.Columns.Add(new DevExpress.Web.ASPxTreeList.TreeListDataColumn("KeyName", "Имя ключя"));
                ASPxTreeList1.Columns.Add(new DevExpress.Web.ASPxTreeList.TreeListDataColumn("IsNodeInRsch", Rs.ResearchName));
                ASPxTreeList1.Columns.Add(new DevExpress.Web.ASPxTreeList.TreeListDataColumn("IsMoneInCompared", ASPxComboBox1.SelectedItem.Text));
                //var r = CreateNodeCore( "test root","1", "2", null);
                //CreateNodeCore("child", "2", "1", r);
                //CreateNodeCore("test root2", "3", "3", null);

                //ASPxTreeList1.AppendNode(1,new { IsNodeInRsch = "1", IsMoneInCompared = "2" }, null);
                //ASPxLabel3.Text = ASPxComboBox1.SelectedItem.Text;
                //LComparePie.Text = ASPxComboBox1.SelectedItem.Text;
            }
            //rschId = (int)ASPxComboBox1.SelectedItem.Value;
            Int32.TryParse((string)ASPxComboBox1.SelectedItem.Value, out rschId);
            CompareTrees ct = new CompareTrees();
            try
            {
                ASPxTreeList1.ClearNodes();
                var nodes = ct.GetRschTree(Rs.Id, rschId);
                for (int i = 0; i < nodes.Nodes.Count; i++) //TreeNode tn in nodes.Nodes)
                    TreeView1.Nodes.Add(nodes.Nodes[i]);
               TreeView1.Nodes[0].Text = "Сравнение ветвей реестра";
               ConvertTreeViewToTreeList(TreeView1.Nodes[0], null);
               ASPxTreeList1.ExpandAll();
            }
            catch
            {
                TreeView1.Nodes.Add(new TreeNode("Нет этементов для сравнения"));
            }
        }