1 /* 2 This Java source file was generated by test-to-java.xsl 3 and is a derived work from the source document. 4 The source document contained the following notice: 5 6 7 8 Copyright (c) 2001 World Wide Web Consortium, 9 (Massachusetts Institute of Technology, Institut National de 10 Recherche en Informatique et en Automatique, Keio University). All 11 Rights Reserved. This program is distributed under the W3C's Software 12 Intellectual Property License. This program is distributed in the 13 hope that it will be useful, but WITHOUT ANY WARRANTY; without even 14 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 PURPOSE. 16 17 See W3C License http://www.w3.org/Consortium/Legal/ for more details. 18 19 20 */ 21 22 package tests.org.w3c.dom; 23 24 import java.util.ArrayList; 25 import java.util.List; 26 27 import org.w3c.dom.Document; 28 import org.w3c.dom.NodeList; 29 import org.w3c.dom.Element; 30 import org.w3c.dom.Node; 31 32 import javax.xml.parsers.DocumentBuilder; 33 34 /** 35 * The "getElementsByTagNameNS(namespaceURI,localName)" method for a Document 36 * should return a new NodeList of all Elements that have a namespace when local 37 * name is specified as ' '. 38 * 39 * Invoke method getElementsByTagNameNS(namespaceURI,localName) on this document 40 * with namespaceURI and localName as " ". Method should return a new NodeList 41 * of 37 elements. 42 * 43 * @author NIST 44 * @author Mary Brady 45 * @see <a 46 * 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> 47 */ 48 public final class GetElementsByTagNameNS extends DOMTestCase { 49 DOMDocumentBuilderFactory factory; 50 51 DocumentBuilder builder; 52 53 protected void setUp() throws Exception { 54 super.setUp(); 55 try { 56 factory = new DOMDocumentBuilderFactory(DOMDocumentBuilderFactory 57 .getConfiguration2()); 58 builder = factory.getBuilder(); 59 } catch (Exception e) { 60 fail("Unexpected exception" + e.getMessage()); 61 } 62 } 63 64 protected void tearDown() throws Exception { 65 factory = null; 66 builder = null; 67 super.tearDown(); 68 } 69 public void testGetElementsByTagNameNS1() throws Throwable { 70 String namespaceURI = "*"; 71 String localName = "*"; 72 Document doc; 73 NodeList newList; 74 doc = (Document) load("staffNS", builder); 75 newList = doc.getElementsByTagNameNS(namespaceURI, localName); 76 // BEGIN android-changed: Was 37, but that assumed validation. 77 assertEquals("throw_Size", 36, newList.getLength()); 78 // END android-changed 79 } 80 public void testGetElementsByTagNameNS2() throws Throwable { 81 Document doc; 82 NodeList newList; 83 Element newElement; 84 String prefix; 85 String lname; 86 doc = (Document) load("staffNS", builder); 87 newList = doc.getElementsByTagNameNS("*", "employee"); 88 assertEquals("employeeCount", 5, newList.getLength()); 89 newElement = (Element) newList.item(3); 90 prefix = newElement.getPrefix(); 91 assertEquals("prefix", "emp", prefix); 92 lname = newElement.getLocalName(); 93 assertEquals("lname", "employee", lname); 94 } 95 public void testGetElementsByTagNameNS3() throws Throwable { 96 Document doc; 97 NodeList elementList; 98 Node child; 99 String childName; 100 List<String> result = new ArrayList<String>(); 101 102 List<String> expectedResult = new ArrayList<String>(); 103 expectedResult.add("employee"); 104 expectedResult.add("employeeId"); 105 expectedResult.add("name"); 106 expectedResult.add("position"); 107 expectedResult.add("salary"); 108 expectedResult.add("gender"); 109 expectedResult.add("address"); 110 expectedResult.add("emp:employee"); 111 expectedResult.add("emp:employeeId"); 112 expectedResult.add("emp:position"); 113 expectedResult.add("emp:salary"); 114 expectedResult.add("emp:gender"); 115 expectedResult.add("emp:address"); 116 expectedResult.add("address"); 117 118 doc = (Document) load("staffNS", builder); 119 elementList = doc.getElementsByTagNameNS("http://www.nist.gov", "*"); 120 for (int indexN10076 = 0; indexN10076 < elementList.getLength(); indexN10076++) { 121 child = (Node) elementList.item(indexN10076); 122 childName = child.getNodeName(); 123 result.add(childName); 124 } 125 assertEquals("nodeNames", expectedResult, result); 126 } 127 public void testGetElementsByTagNameNS4() throws Throwable { 128 Document doc; 129 NodeList elementList; 130 Node child; 131 String childName; 132 List<String> result = new ArrayList<String>(); 133 134 List<String> expectedResult = new ArrayList<String>(); 135 expectedResult.add("address"); 136 expectedResult.add("address"); 137 expectedResult.add("address"); 138 expectedResult.add("emp:address"); 139 expectedResult.add("address"); 140 141 doc = (Document) load("staffNS", builder); 142 elementList = doc.getElementsByTagNameNS("*", "address"); 143 for (int indexN10059 = 0; indexN10059 < elementList.getLength(); indexN10059++) { 144 child = (Node) elementList.item(indexN10059); 145 childName = child.getNodeName(); 146 result.add(childName); 147 } 148 assertEquals("nodeNames", expectedResult, result); 149 } 150 public void testGetElementsByTagNameNS5() throws Throwable { 151 String namespaceURI = "http://www.nist.gov"; 152 String localName = "nomatch"; 153 Document doc; 154 NodeList elementList; 155 doc = (Document) load("staffNS", builder); 156 elementList = doc.getElementsByTagNameNS(namespaceURI, localName); 157 assertEquals("throw_Size", 0, elementList.getLength()); 158 } 159 public void testGetElementsByTagNameNS6() throws Throwable { 160 Document doc; 161 NodeList elementList; 162 doc = (Document) load("staffNS", builder); 163 elementList = doc.getElementsByTagNameNS("http://www.nomatch.com", 164 "address"); 165 assertEquals("matchSize", 0, elementList.getLength()); 166 } 167 public void testGetElementsByTagNameNS7() throws Throwable { 168 Document doc; 169 NodeList elementList; 170 doc = (Document) load("staffNS", builder); 171 elementList = doc.getElementsByTagNameNS("http://www.nist.gov", 172 "address"); 173 assertEquals("addresses", 3, elementList.getLength()); 174 } 175 public void testGetElementsByTagNameNS8() throws Throwable { 176 Document doc; 177 Element docElem; 178 NodeList newList; 179 doc = (Document) load("staffNS", builder); 180 docElem = doc.getDocumentElement(); 181 newList = docElem.getElementsByTagNameNS("*", "*"); 182 assertEquals("listSize", 35, newList.getLength()); 183 } 184 public void testGetElementsByTagNameNS9() throws Throwable { 185 Document doc; 186 NodeList newList; 187 Element newElement; 188 String prefix; 189 String lname; 190 Element docElem; 191 doc = (Document) load("staffNS", builder); 192 docElem = doc.getDocumentElement(); 193 newList = docElem.getElementsByTagNameNS("*", "employee"); 194 assertEquals("employeeCount", 5, newList.getLength()); 195 newElement = (Element) newList.item(3); 196 prefix = newElement.getPrefix(); 197 assertEquals("prefix", "emp", prefix); 198 lname = newElement.getLocalName(); 199 assertEquals("lname", "employee", lname); 200 } 201 public void testGetElementsByTagNameNS10() throws Throwable { 202 Document doc; 203 Element docElem; 204 NodeList elementList; 205 Node child; 206 String childName; 207 List<String> result = new ArrayList<String>(); 208 209 List<String> expectedResult = new ArrayList<String>(); 210 expectedResult.add("employee"); 211 expectedResult.add("employeeId"); 212 expectedResult.add("name"); 213 expectedResult.add("position"); 214 expectedResult.add("salary"); 215 expectedResult.add("gender"); 216 expectedResult.add("address"); 217 expectedResult.add("emp:employee"); 218 expectedResult.add("emp:employeeId"); 219 expectedResult.add("emp:position"); 220 expectedResult.add("emp:salary"); 221 expectedResult.add("emp:gender"); 222 expectedResult.add("emp:address"); 223 expectedResult.add("address"); 224 225 doc = (Document) load("staffNS", builder); 226 docElem = doc.getDocumentElement(); 227 elementList = docElem 228 .getElementsByTagNameNS("http://www.nist.gov", "*"); 229 for (int indexN1007E = 0; indexN1007E < elementList.getLength(); indexN1007E++) { 230 child = (Node) elementList.item(indexN1007E); 231 childName = child.getNodeName(); 232 result.add(childName); 233 } 234 assertEquals("nodeNames", expectedResult, result); 235 } 236 public void testGetElementsByTagNameNS11() throws Throwable { 237 Document doc; 238 Element docElem; 239 NodeList elementList; 240 Node child; 241 String childName; 242 List<String> result = new ArrayList<String>(); 243 244 List<String> expectedResult = new ArrayList<String>(); 245 expectedResult.add("address"); 246 expectedResult.add("address"); 247 expectedResult.add("address"); 248 expectedResult.add("emp:address"); 249 expectedResult.add("address"); 250 251 doc = (Document) load("staffNS", builder); 252 docElem = doc.getDocumentElement(); 253 elementList = docElem.getElementsByTagNameNS("*", "address"); 254 for (int indexN1005E = 0; indexN1005E < elementList.getLength(); indexN1005E++) { 255 child = (Node) elementList.item(indexN1005E); 256 childName = child.getNodeName(); 257 result.add(childName); 258 } 259 assertEquals("nodeNames", expectedResult, result); 260 } 261 public void testGetElementsByTagNameNS12() throws Throwable { 262 Document doc; 263 Element docElem; 264 NodeList elementList; 265 doc = (Document) load("staffNS", builder); 266 docElem = doc.getDocumentElement(); 267 elementList = docElem.getElementsByTagNameNS("http://www.nist.gov", 268 "nomatch"); 269 assertEquals("size", 0, elementList.getLength()); 270 } 271 public void testGetElementsByTagNameNS13() throws Throwable { 272 Document doc; 273 Element docElem; 274 NodeList elementList; 275 doc = (Document) load("staffNS", builder); 276 docElem = doc.getDocumentElement(); 277 elementList = docElem.getElementsByTagNameNS("http://www.nomatch.com", 278 "address"); 279 assertEquals("matchSize", 0, elementList.getLength()); 280 } 281 public void testGetElementsByTagNameNS14() throws Throwable { 282 Document doc; 283 Element docElem; 284 NodeList elementList; 285 doc = (Document) load("staffNS", builder); 286 docElem = doc.getDocumentElement(); 287 elementList = docElem.getElementsByTagNameNS("http://www.nist.gov", 288 "address"); 289 assertEquals("addresses", 3, elementList.getLength()); 290 } 291 } 292