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)
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)
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)
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")