public void CanCreateNewEdgesOnNewGraph() { Node nodeA = new Node("A"); Node nodeB = new Node("B"); Graph myGraph = new Graph(nodeA); myGraph.AddEdge(nodeB, nodeA); Assert.Contains(nodeA, myGraph.GetNeighbors(nodeB)); Assert.Contains(nodeB, myGraph.GetNeighbors(nodeA)); Assert.Contains(nodeA, myGraph.NodeList); Assert.Contains(nodeB, myGraph.NodeList); }
public void TestAddEdge(string valueOne, string valueTwo, string valueThree) { Vertex vertexOne = new Vertex(valueOne); Vertex vertexTwo = new Vertex(valueTwo); Vertex vertexThree = new Vertex(valueThree); Graph myGraph = new Graph(); myGraph.AddVertex(vertexOne); myGraph.AddVertex(vertexTwo); myGraph.AddVertex(vertexThree); myGraph.AddUndirectedEdge(vertexOne, vertexTwo); Assert.True(myGraph.GetNeighbors(vertexOne).Contains(vertexTwo) && myGraph.GetNeighbors(vertexThree).Count == 0); }
public void CanReturnCorrectNeighbors() { 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(nodeG, nodeE); myGraph.AddEdge(nodeH, nodeF); myGraph.AddEdge(nodeI, nodeF); myGraph.AddEdge(nodeG, nodeH); myGraph.AddEdge(nodeJ, nodeH); myGraph.AddEdge(nodeJ, nodeI); Assert.Contains(nodeB, myGraph.GetNeighbors(nodeA)); }
public void CanCreateNewEdgesOnEstablishedGraph() { 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(nodeG, nodeE); myGraph.AddEdge(nodeH, nodeF); myGraph.AddEdge(nodeI, nodeF); myGraph.AddEdge(nodeG, nodeH); myGraph.AddEdge(nodeJ, nodeH); myGraph.AddEdge(nodeJ, nodeI); Node newNode = new Node("X"); myGraph.AddEdge(newNode, nodeA); Assert.Contains(newNode, myGraph.GetNeighbors(nodeA)); Assert.Contains(newNode, myGraph.NodeList); }