1package tests.org.w3c.dom; 2 3import dalvik.annotation.TestTargets; 4import dalvik.annotation.TestLevel; 5import dalvik.annotation.TestTargetNew; 6import dalvik.annotation.TestTargetClass; 7 8import org.w3c.dom.Element; 9import org.w3c.dom.Document; 10import org.w3c.dom.NodeList; 11 12import javax.xml.parsers.DocumentBuilder; 13 14/** 15 * The method getElementsByTagNameNS returns a NodeList of all the Elements with 16 * a given local name and namespace URI in the order in which they are 17 * encountered in a preorder traversal of the Document tree. Invoke 18 * getElementsByTagNameNS on the documentElement with values for namespaceURI 19 * '*' and localName '*'. Verify if this returns a nodeList of 0 elements. 20 * 21 * @author IBM 22 * @author Neil Delima 23 * @see <a 24 * href="http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS">http://www.w3.org/TR/DOM-Level-2-Core/core#ID-getElBTNNS</a> 25 */ 26@TestTargetClass(Element.class) 27public final class ElementGetElementsByTagNameNS extends DOMTestCase { 28 29 DOMDocumentBuilderFactory factory; 30 31 DocumentBuilder builder; 32 33 protected void setUp() throws Exception { 34 super.setUp(); 35 try { 36 factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory 37 .getConfiguration2()); 38 builder = factory.getBuilder(); 39 } catch (Exception e) { 40 fail("Unexpected exception" + e.getMessage()); 41 } 42 } 43 44 protected void tearDown() throws Exception { 45 factory = null; 46 builder = null; 47 super.tearDown(); 48 } 49 50 /** 51 * Runs the test case. 52 * 53 * @throws Throwable 54 * Any uncaught exception causes test to fail 55 */ 56 @TestTargetNew( 57 level = TestLevel.PARTIAL, 58 notes = "Doesn't verify DOMException.", 59 method = "getElementsByTagNameNS", 60 args = {java.lang.String.class, java.lang.String.class} 61 ) 62 public void testGetElementsByTagNameNS1() throws Throwable { 63 Document doc; 64 Element element; 65 NodeList elementList; 66 doc = (Document) load("staffNS", builder); 67 element = doc.getDocumentElement(); 68 elementList = element.getElementsByTagNameNS("**", "*"); 69 assertEquals("elementgetelementsbytagnamens02", 0, elementList 70 .getLength()); 71 } 72 @TestTargetNew( 73 level = TestLevel.PARTIAL, 74 notes = "Doesn't verify DOMException.", 75 method = "getElementsByTagNameNS", 76 args = {java.lang.String.class, java.lang.String.class} 77 ) 78 public void testGetElementsByTagNameNS4() throws Throwable { 79 Document doc; 80 Element element; 81 Element child1; 82 Element child2; 83 Element child3; 84 85 NodeList elementList; 86 String nullNS = null; 87 88 doc = (Document) load("staffNS", builder); 89 element = doc.createElementNS("http://www.w3.org/DOM", "root"); 90 child1 = doc.createElementNS("http://www.w3.org/DOM/Level1", 91 "dom:child"); 92 child2 = doc.createElementNS(nullNS, "child"); 93 child3 = doc.createElementNS("http://www.w3.org/DOM/Level2", 94 "dom:child"); 95 element.appendChild(child1); 96 element.appendChild(child2); 97 element.appendChild(child3); 98 elementList = element.getElementsByTagNameNS(nullNS, "child"); 99 assertEquals("elementgetelementsbytagnamens04_1", 1, elementList 100 .getLength()); 101 elementList = element.getElementsByTagNameNS("*", "child"); 102 assertEquals("elementgetelementsbytagnamens04_2", 3, elementList 103 .getLength()); 104 } 105 @TestTargetNew( 106 level = TestLevel.PARTIAL, 107 notes = "Doesn't verify DOMException.", 108 method = "getElementsByTagNameNS", 109 args = {java.lang.String.class, java.lang.String.class} 110 ) 111 public void testGetElementsByTagNameNS5() throws Throwable { 112 Document doc; 113 Element element; 114 NodeList elementList; 115 doc = (Document) load("staffNS", builder); 116 element = doc.getDocumentElement(); 117 elementList = element.getElementsByTagNameNS( 118 "http://www.altavista.com", "*"); 119 assertEquals("elementgetelementsbytagnamens05", 1, elementList 120 .getLength()); 121 } 122} 123