def test_edges_random(self): for i in xrange(self.repeats): self.graph = DictGraph() edges = set() for i in xrange(self.repeats): edges.add((randint(0, 49), randint(50, 100))) self.graph.add_edges(edges) gotedges = set(self.graph.edges()) self.assertEqual(edges, gotedges) self.graph.del_edges(edges) gotedges = set(self.graph.edges()) self.assertEqual(set([]), gotedges) for i in xrange(self.repeats): edges = set() alledges = set() for i in xrange(self.repeats): edge = (randint(0, 49), randint(50, 100)) edges.add(edge) alledges.add(edge) alledges.add((edge[1], edge[0])) self.graph.add_edges(edges, double=True) gotedges = set(self.graph.edges()) self.assertEqual(alledges, gotedges) self.graph.del_edges(edges, double=True) gotedges = set(self.graph.edges()) self.assertEqual(set([]), gotedges)
def test_postorder3(self): for i in range(100): graph = DictGraph() edges = [(1, 2)] graph.add_node(3) graph.add_edges(edges) assert graph.postorder() == [2, 1, 3]
def test_postorder3(self): for i in range(100): graph = DictGraph() edges1 = [(1, 'j'), ('j', 3), (3, 'z')] edges2 = [(1, 8), (8, 'k')] graph.add_edges(edges2) graph.add_edges(edges1) assert graph.postorder() == ['k', 8, 'z', 3, 'j', 1]
def setUp(self): self.graph = DictGraph() self.repeats = 20