def test_subelement(): parent = Element("parent") child0 = SubElement(parent, "child0") assert parent[0].tag == "child0" assert parent[0].attrib == {} assert parent[0].text is None assert parent[0].tail is None child1 = SubElement(parent, "child1", dict(a=0, b=1)) assert parent[1].tag == "child1" assert parent[1].attrib == {"a": 0, "b": 1} assert parent[1].text is None assert parent[1].tail is None child2 = SubElement(parent, "child2", a=0, b=1) assert parent[2].tag == "child2" assert parent[2].attrib == {"a": 0, "b": 1} assert parent[2].text is None assert parent[2].tail is None child3 = SubElement(parent, "child3", dict(a=0, b=1), c=2) assert parent[3].tag == "child3" assert parent[3].attrib == {"a": 0, "b": 1, "c": 2} assert parent[3].text is None assert parent[3].tail is None assert parent.getchildren() == [child0, child1, child2, child3]
def test_element_children(): parent = Element("parent") parent.append(Element("child0")) parent.append(Element("child1")) parent.append(Element("child2")) parent.append(Element("child3")) assert len(parent) == 4 assert parent[0].tag == "child0" assert parent[3].tag == "child3" parent[3] = Element("child4") assert parent[3].tag == "child4" del parent[3] assert len(parent) == 3 child0, child1 = parent[:2] assert child0.tag == "child0" assert child1.tag == "child1" parent[:2] = Element("firstone"), Element("firsttwo") assert parent[0].tag == "firstone" assert parent[1].tag == "firsttwo" del parent[:2] assert len(parent) == 1 print parent[0].tag assert parent[0].tag == "child2" parent.insert(0, Element("insert1")) parent.insert(0, Element("insert0")) assert parent[0].tag == "insert0" assert parent[1].tag == "insert1" assert len(parent) == 3 child = parent[-1] parent.remove(child) assert len(parent) == 2 children = parent.getchildren() assert len(children) == 2 assert children[0].tag == "insert0" assert children[1].tag == "insert1" parent.clear() assert parent.tag == "parent" assert len(parent) == 0