Пример #1
0
        public void UndirectedWeightedEdge_EqualsWithDifferentVertexOrderTest()
        {
            // Arrange.
            const int expectedWeight = 2;
            UndirectedWeightedEdge <Vertex> edge1;
            UndirectedWeightedEdge <Vertex> edge2;
            Vertex vertex1;
            Vertex vertex2;
            Vertex vertex3;
            Vertex vertex4;
            string expectedEdge1Vertex1Label = "My label a";
            string expectedEdge1Vertex2Label = "My label b";
            string expectedEdge2Vertex1Label = "My label b";
            string expectedEdge2Vertex2Label = "My label a";

            // Act.
            vertex1 = new Vertex(expectedEdge1Vertex1Label);
            vertex2 = new Vertex(expectedEdge1Vertex2Label);
            vertex3 = new Vertex(expectedEdge2Vertex1Label);
            vertex4 = new Vertex(expectedEdge2Vertex2Label);
            edge1   = new UndirectedWeightedEdge <Vertex>(vertex1, vertex2, expectedWeight);
            edge2   = new UndirectedWeightedEdge <Vertex>(vertex3, vertex4, expectedWeight);

            // Assert.
            Assert.AreNotSame(edge1, edge2);
            Assert.AreEqual(edge1, edge2);
            Assert.IsTrue(edge1 == edge2);
            Assert.IsFalse(edge1 != edge2);
        }
Пример #2
0
        public void UndirectedWeightedEdge_IsSelfLoopTest()
        {
            // Arrange.
            const int expectedWeight = 2;
            UndirectedWeightedEdge <Vertex> edge;
            Vertex vertex1;
            Vertex vertex2;
            string expectedVertex1Label = "My label 1";

            // Act.
            vertex1 = new Vertex(expectedVertex1Label);
            vertex2 = vertex1;
            edge    = new UndirectedWeightedEdge <Vertex>(vertex1, vertex2, expectedWeight);

            // Assert.
            Assert.IsTrue(edge.IsSelfLoop);
        }
Пример #3
0
        public void UndirectedWeightedEdge_InitializationWithValuesTest()
        {
            // Arrange.
            const int expectedWeight = 2;
            UndirectedWeightedEdge <Vertex> edge;
            Vertex vertex1;
            Vertex vertex2;
            string expectedVertex1Label = "My label 1";
            string expectedVertex2Label = "My label 2";

            // Act.
            vertex1 = new Vertex(expectedVertex1Label);
            vertex2 = new Vertex(expectedVertex2Label);
            edge    = new UndirectedWeightedEdge <Vertex>(vertex1, vertex2, expectedWeight);

            // Assert.
            Assert.IsNotNull(edge.Vertex1);
            Assert.AreSame(vertex1, edge.Vertex1);
            Assert.IsNotNull(edge.Vertex2);
            Assert.AreSame(vertex2, edge.Vertex2);
            Assert.AreEqual(expectedWeight, edge.Weight);
        }