Esempio n. 1
0
 def test_add_graph_directed(self):
     T = Graph(self.N, directed=True)
     T.add_edge(Edge(0, 3, 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)
Esempio n. 2
0
 def setUp(self):
     self.N = 4           # number of nodes
     self.G = Graph(self.N, directed=True)
     self.edges = [
         Edge(0, 1, 2), Edge(1, 2, 4), Edge(2, 0, 6), Edge(2, 3, 3), 
         Edge(3, 1, 5)]
     for edge in self.edges:
         self.G.add_edge(edge)
Esempio n. 3
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)
Esempio n. 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 [0, 1, 2, 3]:
         T.add_node(node)
     self.assertFalse(T == self.G, "nodes are different")
     T.del_node(3)
     self.assertFalse(T == self.G, "numbers of nodes are different")
     T.add_node(3)
     T.add_edge(Edge(0, 1, 2))
     T.add_edge(Edge(1, 2, 4))
     T.add_edge(Edge(2, 0, 6))
     T.add_edge(Edge(2, 3, 3))
     self.assertFalse(T == self.G, "edge numbers are different")
     T.add_edge(Edge(3, 1, 7))
     self.assertFalse(T == self.G, "edge weights are different")
     T.del_edge(Edge(3, 1, 7))
     T.add_edge(Edge(1, 3, 5))
     self.assertFalse(T == self.G, "edge directions are different")
     T.del_edge(Edge(1, 3, 5))
     T.add_edge(Edge(3, 1, 5))
     self.assertTrue(T == self.G, "graphs are the same")