Пример #1
0
        public void CreateEdge_Calls_Add_Edge_For_Source_And_Targ_Nodes()
        {
            //Arrange
            var mockNodeA = new Mock<IBasicNode>();
            var mockNodeB = new Mock<IBasicNode>();

            var net = new BasicAdjList(Guid.NewGuid());

            mockNodeA.Setup(foo => foo.Network).Returns(net);
            mockNodeB.Setup(foo => foo.Network).Returns(net);

            mockNodeA.Setup(foo => foo.Index).Returns(0);
            mockNodeB.Setup(foo => foo.Index).Returns(1);

            net.AddNewNode(mockNodeA.Object);
            net.AddNewNode(mockNodeB.Object);

            var edge = net.CreateEdge(mockNodeA.Object, mockNodeB.Object);
            mockNodeA.Verify(foo => foo.AddEdge(edge), Times.AtLeastOnce());
            mockNodeB.Verify(foo => foo.AddEdge(edge), Times.AtLeastOnce());
        }