dom/tests/mochitest/dom-level2-html/test_HTMLTableSectionElement31.html

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     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/HTMLTableSectionElement31</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 ['HTMLTableSectionElement31'];
    15 }
    17 var docsLoaded = -1000000;
    18 var builder = null;
    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();
    37       docsLoaded = 0;
    39       var docRef = null;
    40       if (typeof(this.doc) != 'undefined') {
    41         docRef = this.doc;
    42       }
    43       docsLoaded += preload(docRef, "doc", "tablesection");
    45        if (docsLoaded == 1) {
    46           setUpPage = 'complete';
    47        }
    48     } catch(ex) {
    49     	catchInitializationError(builder, ex);
    50         setUpPage = 'complete';
    51     }
    52 }
    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 }
    72 /**
    73 * 
    74     The deleteRow() method deletes a row from this section.  The index
    75     starts from 0 and is relative only to the rows contained inside
    76     this section, not all the rows in the table.  If the index is -1
    77     the last row will be deleted.
    79     Retrieve the second TBODY element and invoke the deleteRow() method
    80     with an index of -1.  The nuber of rows in the THEAD section before 
    81     the deletion of the row is two.  After the row is deleted the number 
    82     of rows in the TBODY section is one.
    84 * @author NIST
    85 * @author Rick Rivello
    86 * @see http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626
    87 */
    88 function HTMLTableSectionElement31() {
    89    var success;
    90     if(checkInitialization(builder, "HTMLTableSectionElement31") != null) return;
    91     var nodeList;
    92       var testNode;
    93       var rowsnodeList;
    94       var vrows;
    95       var doc;
    97       var docRef = null;
    98       if (typeof(this.doc) != 'undefined') {
    99         docRef = this.doc;
   100       }
   101       doc = load(docRef, "doc", "tablesection");
   102       nodeList = doc.getElementsByTagName("tbody");
   103       assertSize("Asize",2,nodeList);
   104 testNode = nodeList.item(1);
   105       rowsnodeList = testNode.rows;
   107       vrows = rowsnodeList.length;
   109       assertEquals("rowsLink1",2,vrows);
   110        testNode.deleteRow(-1);
   111       rowsnodeList = testNode.rows;
   113       vrows = rowsnodeList.length;
   115       assertEquals("rowsLink2",1,vrows);
   117 }
   119 </script>
   120 </head>
   121 <body>
   122 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/html/HTMLTableSectionElement31</h2>
   123 <p>&lt;test name='HTMLTableSectionElement31' schemaLocation='http://www.w3.org/2001/DOM-Test-Suite/Level-2 dom2.xsd'&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;HTMLTableSectionElement31&lt;/title&gt;
   124 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;creator&gt;NIST&lt;/creator&gt;
   125 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;description&gt;
   126     The deleteRow() method deletes a row from this section.  The index
   127     starts from 0 and is relative only to the rows contained inside
   128     this section, not all the rows in the table.  If the index is -1
   129     the last row will be deleted.
   131     Retrieve the second TBODY element and invoke the deleteRow() method
   132     with an index of -1.  The nuber of rows in the THEAD section before 
   133     the deletion of the row is two.  After the row is deleted the number 
   134     of rows in the TBODY section is one.
   135 &lt;/description&gt;
   136 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;contributor&gt;Rick Rivello&lt;/contributor&gt;
   137 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;date qualifier='created'&gt;2002-11-07&lt;/date&gt;
   138 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;subject resource='<a href="http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626">http://www.w3.org/TR/DOM-Level-2-HTML/html#ID-5625626</a>'/&gt;
   139 <br>&lt;/metadata&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='nodeList' type='NodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='testNode' type='Node'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='rowsnodeList' type='HTMLCollection'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='vrows' type='int'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;var name='doc' type='Document'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;load var='doc' href='tablesection' willBeModified='true'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;getElementsByTagName interface='Document' obj='doc' var='nodeList' tagname='"tbody"'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertSize collection='nodeList' size='2' <a id="Asize">id='Asize'</a>/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;item interface='NodeList' obj='nodeList' var='testNode' index='1'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vrows' expected='2' <a id="rowsLink1">id='rowsLink1'</a> ignoreCase='false'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;deleteRow interface='HTMLTableSectionElement' obj='testNode' index='-1'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;rows interface='HTMLTableSectionElement' obj='testNode' var='rowsnodeList'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;length interface='HTMLCollection' obj='rowsnodeList' var='vrows'/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;assertEquals actual='vrows' expected='1' <a id="rowsLink2">id='rowsLink2'</a> ignoreCase='false'/&gt;<br>&lt;/test&gt;<br>
   140 </p>
   141 <p>
   142 			Copyright (c) 2001-2004 World Wide Web Consortium,
   143 			(Massachusetts Institute of Technology, Institut National de
   144 			Recherche en Informatique et en Automatique, Keio University). All
   145 			Rights Reserved. This program is distributed under the W3C's Software
   146 			Intellectual Property License. This program is distributed in the
   147 			hope that it will be useful, but WITHOUT ANY WARRANTY; without even
   148 			the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
   149 			PURPOSE.
   150 			</p>
   151 <p>See W3C License <a href="http://www.w3.org/Consortium/Legal/">http://www.w3.org/Consortium/Legal/</a> 
   152  for more details.</p>
   153 <iframe name="doc" src="files/tablesection.html"></iframe>
   154 <br>
   155 </body>
   156 </html>

mercurial