def test_iternodes(self): """test ExternalLink.__iternodes__()""" node1n1 = Text("http://example.com/") node2n1 = Text("http://example.com/") node2n2, node2n3 = Text("Example"), Text("Page") node1 = ExternalLink(wrap([node1n1]), brackets=False) node2 = ExternalLink(wrap([node2n1]), wrap([node2n2, node2n3])) gen1 = node1.__iternodes__(getnodes) gen2 = node2.__iternodes__(getnodes) self.assertEqual((None, node1), next(gen1)) self.assertEqual((None, node2), next(gen2)) self.assertEqual((node1.url, node1n1), next(gen1)) self.assertEqual((node2.url, node2n1), next(gen2)) self.assertEqual((node2.title, node2n2), next(gen2)) self.assertEqual((node2.title, node2n3), next(gen2)) self.assertRaises(StopIteration, next, gen1) self.assertRaises(StopIteration, next, gen2)