Example #1
0
        public void CloneNetworkwithBranch()
        {
            var node1 = new Node { Name = "node1" };
            var node2 = new Node {Name = "node2"};
            var channel = new Branch {Name = "branch1", Source = node1, Target = node2};
            channel.BranchFeatures.Add(new SimpleBranchFeature() {Branch = channel});

            var network = new Network
                              {
                                  Name = "network1",
                                  Nodes = {node1, node2},
                                  Branches = {channel}
                              };

            INetwork clonedNetwork = (INetwork) network.Clone();
            clonedNetwork.Branches[0].GetType().Should().Be.EqualTo(network.Branches[0].GetType());

        }
Example #2
0
        public void CloneNetwork()
        {
            var node1 = new Node { Name = "node1" };
            var node2 = new Node { Name = "node2" };
            var branch = new Branch { Name = "branch1", Source = node1, Target = node2 };
            branch.BranchFeatures.Add(new SimpleBranchFeature() { Branch = branch });

            var network = new Network
            {
                Name = "network1",
                Nodes = { node1, node2 },
                Branches = { branch }
            };

            INetwork clonedNetwork = (INetwork) network.Clone();
            clonedNetwork.Name = "clone";

            clonedNetwork.Branches.Count.Should().Be.EqualTo(1);
            clonedNetwork.Nodes.Count.Should().Be.EqualTo(2);
            clonedNetwork.Branches[0].Name.Should().Be.EqualTo("branch1");
            clonedNetwork.Branches[0].Source.IncomingBranches.Count.Should().Be.EqualTo(0);
            clonedNetwork.Branches[0].Source.OutgoingBranches[0].Should().Be.EqualTo(clonedNetwork.Branches[0]);
            clonedNetwork.Branches[0].Target.IncomingBranches.Count.Should().Be.EqualTo(1);
            clonedNetwork.Branches[0].GetType().Should().Be.EqualTo(network.Branches[0].GetType());

            Assert.AreEqual(clonedNetwork, clonedNetwork.Branches[0].Network);
            Assert.AreEqual(clonedNetwork, clonedNetwork.Branches[0].BranchFeatures[0].Network);
        }