def test_children(self): a = [] b = [] c = [] d = [] a.append(b) a.append(c) b.append(d) c.append(d) graph = ObjectGraph([a, b, c, d]) self.assertCountEqual(graph.children(a), [b, c]) self.assertCountEqual(graph.children(b), [d]) self.assertCountEqual(graph.children(c), [d]) self.assertCountEqual(graph.children(d), [])
def test_construction_from_iterator(self): a = [0] b = [1] a.append(b) b.append(a) objects = iter([a, b, a[0], b[0]]) graph = ObjectGraph(objects) self.assertEqual(len(graph), 4) # Check that we get all the edges we expect. self.assertEqual(len(graph.children(a)), 2) self.assertEqual(len(graph.children(b)), 2)