예제 #1
0
        public void CanReturnCorrectSizeWithIsland()
        {
            Node nodeA = new Node("A");
            Node nodeB = new Node("B");
            Node nodeC = new Node("C");
            Node nodeD = new Node("D");
            Node nodeE = new Node("E");
            Node nodeF = new Node("F");
            Node nodeG = new Node("G");
            Node nodeH = new Node("H");
            Node nodeI = new Node("I");
            Node nodeJ = new Node("J");

            Graph myGraph = new Graph(nodeA);

            myGraph.AddEdge(nodeB, nodeA);
            myGraph.AddEdge(nodeC, nodeA);
            myGraph.AddEdge(nodeD, nodeB);
            myGraph.AddEdge(nodeE, nodeA);
            myGraph.AddEdge(nodeD, nodeE);
            myGraph.AddEdge(nodeF, nodeC);
            myGraph.AddEdge(nodeF, nodeE);
            myGraph.AddEdge(nodeH, nodeF);
            myGraph.AddEdge(nodeI, nodeF);

            myGraph.AddEdge(nodeG, nodeJ);

            Assert.Equal(10, myGraph.Size());

            Assert.Equal(8, myGraph.BreadthFirst(nodeA).Count);
        }
예제 #2
0
        public void CanReturnCorrectSizeOfOne()
        {
            Node nodeA = new Node("A");

            Graph myGraph = new Graph(nodeA);

            Assert.Equal(1, myGraph.Size());
        }
예제 #3
0
        public void TestSize(int count)
        {
            Graph myGraph = new Graph();

            for (int i = 0; i < count; i++)
            {
                myGraph.AddVertex(new Vertex("A"));
            }

            Assert.True(myGraph.Size() == count);
        }