| package tests.org.w3c.dom; |
| |
| import org.w3c.dom.Attr; |
| import org.w3c.dom.Document; |
| import org.w3c.dom.Element; |
| import org.w3c.dom.Node; |
| import org.w3c.dom.NodeList; |
| import org.w3c.dom.NamedNodeMap; |
| |
| import javax.xml.parsers.DocumentBuilder; |
| |
| public final class AttrGetOwnerElement extends DOMTestCase { |
| |
| DOMDocumentBuilderFactory factory; |
| |
| DocumentBuilder builder; |
| |
| protected void setUp() throws Exception { |
| super.setUp(); |
| try { |
| factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory |
| .getConfiguration2()); |
| builder = factory.getBuilder(); |
| } catch (Exception e) { |
| fail("Unexpected exception " + e.getMessage()); |
| } |
| } |
| |
| protected void tearDown() throws Exception { |
| factory = null; |
| builder = null; |
| super.tearDown(); |
| } |
| |
| // Assumes validation. |
| // public void testGetOwnerElement1() throws Throwable { |
| // Document doc; |
| // Attr attr; |
| // Element element; |
| // Element ownerElement; |
| // String ownerElementName; |
| // NodeList elementList; |
| // NamedNodeMap attributes; |
| // String nullNS = null; |
| // |
| // doc = (Document) load("staffNS", builder); |
| // |
| // elementList = doc.getElementsByTagNameNS("http://www.nist.gov", |
| // "employee"); |
| // element = (Element) elementList.item(1); |
| // attributes = element.getAttributes(); |
| // attr = (Attr) attributes.getNamedItemNS(nullNS, "defaultAttr"); |
| // ownerElement = attr.getOwnerElement(); |
| // ownerElementName = ownerElement.getNodeName(); |
| // assertEquals("attrgetownerelement01", "emp:employee", ownerElementName); |
| // |
| // } |
| public void testGetOwnerElement2() throws Throwable { |
| Document doc; |
| Element element; |
| Element ownerElement; |
| String ownerElementName; |
| Attr attr; |
| |
| doc = (Document) load("staffNS", builder); |
| element = doc.createElement("root"); |
| attr = doc.createAttributeNS("http://www.w3.org/DOM/L1", "L1:att"); |
| element.setAttributeNodeNS(attr); |
| ownerElement = attr.getOwnerElement(); |
| ownerElementName = ownerElement.getNodeName(); |
| assertEquals("attrgetownerelement02", "root", ownerElementName); |
| } |
| public void testGetOwnerElement3() throws Throwable { |
| Document doc; |
| Node ownerElement; |
| Attr attr; |
| doc = (Document) load("staffNS", builder); |
| attr = doc.createAttributeNS("http://www.w3.org/DOM", "dom:attr"); |
| ownerElement = attr.getOwnerElement(); |
| assertNull("attrgetownerelement03", ownerElement); |
| } |
| public void testGetOwnerElement4() throws Throwable { |
| Document doc; |
| Document docImp; |
| Node ownerElement; |
| Element element; |
| Attr attr; |
| Attr attrImp; |
| NodeList addresses; |
| |
| doc = (Document) load("staffNS", builder); |
| docImp = (Document) load("staff", builder); |
| |
| addresses = doc |
| .getElementsByTagNameNS("http://www.nist.gov", "address"); |
| element = (Element) addresses.item(1); |
| assertNotNull("empAddressNotNull", element); |
| attr = element.getAttributeNodeNS("http://www.nist.gov", "zone"); |
| attrImp = (Attr) docImp.importNode(attr, true); |
| ownerElement = attrImp.getOwnerElement(); |
| assertNull("attrgetownerelement04", ownerElement); |
| } |
| public void testGetOwnerElement5() throws Throwable { |
| Document doc; |
| Node element; |
| Element ownerElement; |
| Element parentElement; |
| NodeList elementList; |
| String ownerElementName; |
| Attr attr; |
| |
| NamedNodeMap nodeMap; |
| String nullNS = null; |
| |
| doc = (Document) load("staffNS", builder); |
| elementList = doc.getElementsByTagNameNS("*", "address"); |
| element = elementList.item(1); |
| parentElement = (Element) element.getParentNode(); |
| nodeMap = element.getAttributes(); |
| parentElement.removeChild(element); |
| attr = (Attr) nodeMap.getNamedItemNS(nullNS, "street"); |
| ownerElement = attr.getOwnerElement(); |
| ownerElementName = ownerElement.getNodeName(); |
| assertEquals("attrgetownerelement05", "address", ownerElementName); |
| } |
| } |