test_HTMLCollection04.html (7763B)
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 2 <html> 3 <head> 4 <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> 6 <title>http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04</title> 7 <link type="text/css" rel="stylesheet" href="/tests/SimpleTest/test.css"> 8 <script src="/tests/SimpleTest/SimpleTest.js" type="text/javascript"></script> 9 <script src="DOMTestCase.js" type="text/javascript"></script> 10 <script type="text/javascript"> 11 // expose test function names 12 function exposeTestFunctionNames() 13 { 14 return ['HTMLCollection04']; 15 } 16 17 var docsLoaded = -1000000; 18 var builder = null; 19 20 // 21 // This function is called by the testing framework before 22 // running the test suite. 23 // 24 // If there are no configuration exceptions, asynchronous 25 // document loading is started. Otherwise, the status 26 // is set to complete and the exception is immediately 27 // raised when entering the body of the test. 28 // 29 function setUpPage() { 30 setUpPageStatus = 'running'; 31 try { 32 // 33 // creates test document builder, may throw exception 34 // 35 builder = createConfiguredBuilder(); 36 37 docsLoaded = 0; 38 39 var docRef = null; 40 if (typeof(this.doc) != 'undefined') { 41 docRef = this.doc; 42 } 43 docsLoaded += preload(docRef, "doc", "collection"); 44 45 if (docsLoaded == 1) { 46 setUpPage = 'complete'; 47 } 48 } catch(ex) { 49 catchInitializationError(builder, ex); 50 setUpPage = 'complete'; 51 } 52 } 53 54 55 56 // 57 // This method is called on the completion of 58 // each asychronous load started in setUpTests. 59 // 60 // When every synchronous loaded document has completed, 61 // the page status is changed which allows the 62 // body of the test to be executed. 63 function loadComplete() { 64 if (++docsLoaded == 1) { 65 setUpPageStatus = 'complete'; 66 runJSUnitTests(); 67 SimpleTest.finish(); 68 } 69 } 70 71 72 /** 73 * 74 HTMLCollections are live, they are automatically updated when the 75 underlying document is changed. 76 77 Create a HTMLCollection object by invoking the rows attribute of the 78 first TABLE element and examine its length, then add a new row and 79 re-examine the length. 80 81 * @author NIST 82 * @author Rick Rivello 83 * @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551 84 */ 85 function HTMLCollection04() { 86 var success; 87 if(checkInitialization(builder, "HTMLCollection04") != null) return; 88 var nodeList; 89 var testNode; 90 var rowLength1; 91 var rowLength2; 92 var rowsnodeList; 93 var newRow; 94 var vrowindex; 95 var doc; 96 var result = new Array(); 97 98 expectedResult = new Array(); 99 expectedResult[0] = 4; 100 expectedResult[1] = 5; 101 102 103 var docRef = null; 104 if (typeof(this.doc) != 'undefined') { 105 docRef = this.doc; 106 } 107 doc = load(docRef, "doc", "collection"); 108 nodeList = doc.getElementsByTagName("table"); 109 assertSize("Asize",1,nodeList); 110 testNode = nodeList.item(0); 111 rowsnodeList = testNode.rows; 112 113 rowLength1 = rowsnodeList.length; 114 115 result[result.length] = rowLength1; 116 newRow = testNode.insertRow(4); 117 rowLength2 = rowsnodeList.length; 118 119 result[result.length] = rowLength2; 120 assertEqualsList("rowIndexLink",expectedResult,result); 121 122 } 123 124 </script> 125 </head> 126 <body> 127 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLCollection04</h2> 128 <p><test name='HTMLCollection04' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-1 dom1.xsd'><br> <metadata><br> <title>HTMLCollection04</title> 129 <br> <creator>NIST</creator> 130 <br> <description> 131 HTMLCollections are live, they are automatically updated when the 132 underlying document is changed. 133 134 Create a HTMLCollection object by invoking the rows attribute of the 135 first TABLE element and examine its length, then add a new row and 136 re-examine the length. 137 </description> 138 <br> <contributor>Rick Rivello</contributor> 139 <br> <date qualifier='created'>2002-05-01</date> 140 <br> <subject resource='<a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-html#ID-40057551</a>'/> 141 <br></metadata><br> <var name='nodeList' type='NodeList'/><br> <var name='testNode' type='Node'/><br> <var name='rowLength1' type='int'/><br> <var name='rowLength2' type='int'/><br> <var name='rowsnodeList' type='HTMLCollection'/><br> <var name='newRow' type='HTMLElement'/><br> <var name='vrowindex' type='int'/><br> <var name='doc' type='Document'/><br> <var name='result' type='List'/><br> <var name='expectedResult' type='List'><br> <member/><br> <member/><br> </var><br> <load var='doc' href='collection' willBeModified='true'/><br> <getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"table"'/><br> <assertSize collection='nodeList' size='1' <a id="Asize">id='Asize'</a>/><br> <item interface='NodeList' obj='nodeList' var='testNode' index='0'/><br> <rows interface='HTMLTableElement' obj='testNode' var='rowsnodeList'/><br> <length interface='HTMLCollection' obj='rowsnodeList' var='rowLength1'/><br> <append collection='result' item='rowLength1'/><br> <insertRow interface='HTMLTableElement' obj='testNode' var='newRow' index='4'/><br> <length interface='HTMLCollection' obj='rowsnodeList' var='rowLength2'/><br> <append collection='result' item='rowLength2'/><br> <assertEquals actual='result' expected='expectedResult' <a id="rowIndexLink">id='rowIndexLink'</a> ignoreCase='false'/><br></test><br> 142 </p> 143 <p> 144 Copyright (c) 2001-2004 World Wide Web Consortium, 145 (Massachusetts Institute of Technology, Institut National de 146 Recherche en Informatique et en Automatique, Keio University). All 147 Rights Reserved. This program is distributed under the W3C's Software 148 Intellectual Property License. This program is distributed in the 149 hope that it will be useful, but WITHOUT ANY WARRANTY; without even 150 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 151 PURPOSE. 152 </p> 153 <p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 154 for more details.</p> 155 <iframe name="doc" src="files/collection.html"></iframe> 156 <br> 157 </body> 158 </html>