def _get_leaves(nodes): """Finds and returns all leaf nodes contained within `nodes`.""" leaves = [] for n in nodes: leaves.extend(x for x in utils.leaves(n) if utils.has_content(x)) return leaves
def test_has_content(self): a = etree.Element('a') b = etree.Element('b') c = etree.Element('c') c.text = 'Test' b.append(c) a.append(b) self.assertTrue(utils.has_content(c)) self.assertTrue(utils.has_content(b)) self.assertTrue(utils.has_content(a)) no_content = etree.Element('nocontent') self.assertEqual(False, utils.has_content(no_content)) only_comment = etree.XML("<node>" " <!-- a Comment -->" "</node>") self.assertEqual(False, utils.has_content(only_comment))
def test_has_content(self): a = etree.Element('a') b = etree.Element('b') c = etree.Element('c') c.text = 'Test' b.append(c) a.append(b) self.assertTrue(utils.has_content(c)) self.assertTrue(utils.has_content(b)) self.assertTrue(utils.has_content(a)) no_content = etree.Element('nocontent') self.assertEqual(False, utils.has_content(no_content)) only_comment = etree.XML( "<node>" " <!-- a Comment -->" "</node>" ) self.assertEqual(False, utils.has_content(only_comment))
def is_invalid(node): if common.is_idref_content_exception(node): return False return utils.has_content(node)