示例#1
0
        public void ShouldGetNewNameOnMultipleTargets()
        {
            DataContract source = new DataContract(Store);

            source.Name = "Source";
            DataContract target = new DataContract(Store);

            target.Name = "Target";
            DataContractBaseCanBeContainedOnContracts link = new DataContractBaseCanBeContainedOnContracts(source, target);
            ModelElementReference dataElement = new ModelElementReference(Store);

            dataElement.Name = "DcdeName";
            dataElement.SetLinkedElement(link.Id);
            source.DataMembers.Add(dataElement);
            AggregationConnectionBuilder.Connect(source, target);

            Assert.AreEqual(1, target.DataMembers.Count);
            dataElement = (ModelElementReference)target.DataMembers[0];
            Assert.AreEqual("Source", dataElement.Name);

            AggregationConnectionBuilder.Connect(source, target);

            Assert.AreEqual(2, target.DataMembers.Count);
            dataElement = (ModelElementReference)target.DataMembers[1];
            Assert.AreEqual("Source1", dataElement.Name);

            AggregationConnectionBuilder.Connect(source, target);

            Assert.AreEqual(3, target.DataMembers.Count);
            dataElement = (ModelElementReference)target.DataMembers[2];
            Assert.AreEqual("Source2", dataElement.Name);
        }
示例#2
0
        public void ShouldGetNewNameOnSelfReference()
        {
            DataContract source = new DataContract(Store);

            source.Name = "DC";
            AggregationConnectionBuilder.Connect(source, source);

            Assert.AreEqual(1, source.DataMembers.Count);
            ModelElementReference dataElement = (ModelElementReference)source.DataMembers[0];

            Assert.AreEqual("DC", source.Name);
            Assert.AreNotEqual(source.Name, dataElement.Name);
            Assert.AreEqual("DC1", dataElement.Name);
        }