Example #1
0
 def setUp(self):
     self.N = 8           # number of nodes
     self.G = Graph(self.N)
     self.edges = [
         Edge(0, 1, 2), Edge(0, 2, 1), Edge(2, 3, 5), Edge(1, 3, 3), 
         Edge(2, 4, 4), Edge(3, 5, 6), Edge(4, 6, 7), Edge(4, 5, 8), 
         Edge(5, 7, 9), Edge(6, 7, 10)]
     for edge in self.edges:
         self.G.add_edge(edge)
Example #2
0
 def test_add_graph_directed(self):
     T = Graph(self.N, directed=True)
     for node in self.nodes:
         T.add_node(node)
     T.add_edge(Edge("A", "D", 9))
     self.assertEqual(T.v(), self.N)
     self.assertEqual(T.e(), 1)
     self.G.add_graph(T)
     self.assertEqual(self.G.v(), self.N)
     self.assertEqual(self.G.e(), 6)
Example #3
0
 def setUp(self):
     self.N = 4           # number of nodes
     self.G = Graph(self.N, directed=True)
     self.nodes = ["A", "B", "C", "D"]
     self.edges = [
         Edge("A", "B", 2), Edge("B", "C", 4), Edge("C", "A", 6), 
         Edge("C", "D", 3), Edge("D", "B", 5)]
     for node in self.nodes:
         self.G.add_node(node)
     for edge in self.edges:
         self.G.add_edge(edge)
Example #4
0
 def test_cmp(self):
     T = Graph(self.N)
     self.assertFalse(T == self.G, "directed and undirected graphs")
     T = Graph(self.N, directed=True)
     for node in ["A", "B", "C", "X"]:
         T.add_node(node)
     self.assertFalse(T == self.G, "nodes are different")
     T.del_node("X")
     self.assertFalse(T == self.G, "numbers of nodes are different")
     T.add_node("D")
     T.add_edge(Edge("A", "B", 2))
     T.add_edge(Edge("B", "C", 4))
     T.add_edge(Edge("C", "A", 6))
     T.add_edge(Edge("C", "D", 3))
     self.assertFalse(T == self.G, "edge numbers are different")
     T.add_edge(Edge("D", "B", 7))
     self.assertFalse(T == self.G, "edge weights are different")
     T.del_edge(Edge("D", "B", 7))
     T.add_edge(Edge("B", "D", 5))
     self.assertFalse(T == self.G, "edge directions are different")
     T.del_edge(Edge("B", "D", 5))
     T.add_edge(Edge("D", "B", 5))
     self.assertTrue(T == self.G, "graphs are the same")