Beispiel #1
0
        public void AddEdge_AlreadyAdded_ThrowsException()
        {
            // Arrange
            var node1 = new Aca.Model.Node();
            var node2 = new Aca.Model.Node();

            var edge1 = new Aca.Model.Edge
            {
                Origin      = node1,
                Destination = node2
            };

            node1.AddEdge(edge1);

            var edge2 = new Aca.Model.Edge
            {
                Origin      = node1,
                Destination = node2
            };

            // Act
            var ex = Assert.Catch <ArgumentException>(() => node1.AddEdge(edge2));

            //Assert
            StringAssert.Contains("уже добавлено", ex.Message);
        }
Beispiel #2
0
        public void AddEdge_WithOriginInOtherNode_ThrowsException()
        {
            // Arrange
            var node1 = new Aca.Model.Node();
            var edge  = new Aca.Model.Edge
            {
                Origin      = new Aca.Model.Node(),
                Destination = new Aca.Model.Node()
            };

            // Act
            var ex = Assert.Catch <ArgumentException>(() => node1.AddEdge(edge));

            // Assert
            StringAssert.Contains("не начинается в текущем узле", ex.Message);
        }
Beispiel #3
0
        public void AddEdge_AddValidEdge_ContainsInAdjacentNodes()
        {
            // Arrange
            var node1 = new Aca.Model.Node();
            var node2 = new Aca.Model.Node();

            var edge1 = new Aca.Model.Edge
            {
                Origin      = node1,
                Destination = node2
            };

            // Act
            node1.AddEdge(edge1);

            // Assert
            Assert.True(node1.AdjacentNodes.Contains(node2));
        }
Beispiel #4
0
        public void AddEdge_AddValidEdge_IncCostsCountBy1()
        {
            // Arrange
            var node1 = new Aca.Model.Node();
            var node2 = new Aca.Model.Node();

            var edge1 = new Aca.Model.Edge
            {
                Origin      = node1,
                Destination = node2
            };

            var count = node1.Costs.Count;

            // Act
            node1.AddEdge(edge1);

            // Assert
            Assert.True(node1.Costs.Count == count + 1);
        }