Exemplo n.º 1
0
        private void FillModelData()
        {
            _metaData["group1"] = new List <IMetaDataItem>
            {
                new MetaDataItem("item1", "value1"),
                new MetaDataItem("item2", "value2")
            };

            _metaData["group2"] = new List <IMetaDataItem>
            {
                new MetaDataItem("item3", "value3"),
                new MetaDataItem("item4", "value4")
            };

            DsmElement a  = new DsmElement(11, "a", "", 1, true);
            DsmElement a1 = new DsmElement(12, "a1", "eta", 2);
            DsmElement a2 = new DsmElement(13, "a2", "eta", 3);
            DsmElement b  = new DsmElement(14, "b", "", 4);
            DsmElement b1 = new DsmElement(15, "b1", "etb", 5);
            DsmElement b2 = new DsmElement(16, "b2", "etb", 6);
            DsmElement c  = new DsmElement(17, "c", "", 7);
            DsmElement c1 = new DsmElement(18, "c1", "etc", 8);
            DsmElement c2 = new DsmElement(19, "c2", "etc", 9);

            _rootElement.AddChild(a);
            a.AddChild(a1);
            a.AddChild(a2);
            _rootElement.AddChild(b);
            b.AddChild(b1);
            b.AddChild(b2);
            _rootElement.AddChild(c);
            c.AddChild(c1);
            c.AddChild(c2);

            _relations.Add(new DsmRelation(91, a1.Id, b1.Id, "ra", 1000));
            _relations.Add(new DsmRelation(92, a2.Id, b1.Id, "ra", 200));
            _relations.Add(new DsmRelation(93, a1.Id, b2.Id, "ra", 30));
            _relations.Add(new DsmRelation(94, a2.Id, b2.Id, "ra", 4));
            _relations.Add(new DsmRelation(95, a1.Id, c2.Id, "ra", 5));
            _relations.Add(new DsmRelation(96, b2.Id, a1.Id, "rb", 1));
            _relations.Add(new DsmRelation(97, b2.Id, a2.Id, "rb", 2));
            _relations.Add(new DsmRelation(98, c1.Id, a2.Id, "rc", 4));

            Dictionary <string, string> data1 = new Dictionary <string, string>
            {
                ["key1a"] = "value1a",
                ["key1b"] = "value1b"
            };

            _actions.Add(new DsmAction(1, "Action1", data1));

            Dictionary <string, string> data2 = new Dictionary <string, string>
            {
                ["key2a"] = "value2a",
                ["key2b"] = "value2b",
                ["key2c"] = "value2c"
            };

            _actions.Add(new DsmAction(2, "Action2", data2));
        }
Exemplo n.º 2
0
        public void WhenElementIsConstructedThenPropertiesAreSetAccordingArguments()
        {
            int        elementId   = 1;
            string     elementName = "name1";
            string     elementType = "file";
            DsmElement element     = new DsmElement(elementId, elementName, elementType);

            Assert.AreEqual(elementId, element.Id);
            Assert.AreEqual(elementName, element.Name);
            Assert.AreEqual(elementType, element.Type);
            Assert.AreEqual(0, element.Order);
            Assert.AreEqual(elementName, element.Fullname);
        }
Exemplo n.º 3
0
        public IDsmElement ImportElement(int id, string name, string type, int order, bool expanded, int?parentId, bool deleted)
        {
            DsmElement element = new DsmElement(id, name, type, order, expanded);

            if (!parentId.HasValue)
            {
                _rootElement.AddChild(element);
            }
            else
            {
                foreach (DsmElement rootElement in _rootElement.Children)
                {
                    if (rootElement.Id == parentId.Value)
                    {
                        rootElement.AddChild(element);
                    }
                }
            }
            return(element);
        }
Exemplo n.º 4
0
        public void TestElementHierarchy()
        {
            int        parentId   = 1;
            string     parentName = "parent";
            DsmElement parent     = new DsmElement(parentId, parentName, "");

            Assert.AreEqual(null, parent.Parent);
            Assert.AreEqual(0, parent.Children.Count);

            int        child1Id   = 10;
            string     child1Name = "child1";
            DsmElement child1     = new DsmElement(child1Id, child1Name, "");

            Assert.AreEqual(null, child1.Parent);

            parent.AddChild(child1);
            Assert.AreEqual("parent.child1", child1.Fullname);

            Assert.AreEqual(1, parent.Children.Count);
            Assert.AreEqual(child1, parent.Children[0]);
            Assert.AreEqual(parent, child1.Parent);

            int        child2Id   = 100;
            string     child2Name = "child2";
            DsmElement child2     = new DsmElement(child2Id, child2Name, "");

            Assert.AreEqual(null, child2.Parent);

            parent.AddChild(child2);
            Assert.AreEqual("parent.child2", child2.Fullname);

            Assert.AreEqual(2, parent.Children.Count);
            Assert.AreEqual(child1, parent.Children[0]);
            Assert.AreEqual(child2, parent.Children[1]);
            Assert.AreEqual(parent, child2.Parent);

            int        child3Id   = 1000;
            string     child3Name = "child3";
            DsmElement child3     = new DsmElement(child3Id, child3Name, "");

            Assert.AreEqual(null, child3.Parent);
            Assert.AreEqual(null, child3.Parent);

            parent.AddChild(child3);
            Assert.AreEqual("parent.child3", child3.Fullname);

            Assert.AreEqual(3, parent.Children.Count);
            Assert.AreEqual(child1, parent.Children[0]);
            Assert.AreEqual(child2, parent.Children[1]);
            Assert.AreEqual(child3, parent.Children[2]);
            Assert.AreEqual(parent, child2.Parent);

            parent.RemoveChild(child1);
            Assert.AreEqual(null, child1.Parent);
            Assert.AreEqual(2, parent.Children.Count);
            Assert.AreEqual(child2, parent.Children[0]);
            Assert.AreEqual(child3, parent.Children[1]);

            parent.RemoveChild(child2);
            Assert.AreEqual(null, child2.Parent);
            Assert.AreEqual(1, parent.Children.Count);
            Assert.AreEqual(child3, parent.Children[0]);

            parent.RemoveChild(child3);
            Assert.AreEqual(null, child3.Parent);
            Assert.AreEqual(0, parent.Children.Count);
        }