//************************************************************************** // // // National Institute Of Standards and Technology // DTS Version 1.0 // // HTMLTableRowElement Interface //************************************************************************** function HTMLTableRowElement() { var tests = new Array (HTML0001HTRE(),HTML0002HTRE(),HTML0003HTRE(),HTML0004HTRE(),HTML0005HTRE(),HTML0006HTRE(),HTML0007HTRE(),HTML0008HTRE(),HTML0009HTRE(),HTML0010HTRE(),HTML0011HTRE(),HTML0012HTRE(),HTML0013HTRE(),HTML0014HTRE()); return tests; } //------------------------ test case HTML-0001HTRE ------------------------ // // Testing feature - The rowIndex attribute specifies the index of this row // relative to the entire table // // Testing approach - Retrieve the third TR element of the testing // document and examine the "rowIndex" element. // // Semantic Requirements: 1 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0001HTRE() { var computedValue = ""; var expectedValue = 1; var results = ""; var testNode = ""; results = new testResults("HTML0001HTRE"); results.description = "The \"rowIndex\" attribute specifies the "+ "index of this row relative to the entire "+ "table."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,THIRD); // // examine its "rowIndex" attribute. // computedValue = testNode.node.rowIndex; // // Write out results // resetHTMLData(); results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0001HTRE ------------------------- // //------------------------- test case HTML-0002HTRE --------------------------- // // Testing feature - The sectionRowIndex attribute specifies the index of // this row relative to the current section (test // relative for THEAD section) // // Testing approach - Retrieve the first TR element of the testing // document and examine the "sectionRowIndex" element. // // Semantic Requirements: 2 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0002HTRE() { var computedValue = ""; var expectedValue = 0; var results = ""; var testNode = ""; results = new testResults("HTML0002HTRE"); results.description = "The \"sectionRowIndex\" attribute specifies "+ "the index of this row relative to the "+ "current section (test for THEAD section)"; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "sectionRowIndex" attribute. // computedValue = testNode.node.sectionRowIndex; // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0002HTRE ------------------------- // //------------------------- test case HTML-0003HTRE --------------------------- // // Testing feature - The sectionRowIndex attribute specifies the index of // this row relative to the current section (test // relative for TFOOT section) // // Testing approach - Retrieve the second TR element of the testing // document and examine the "sectionRowIndex" element. // // Semantic Requirements: 2 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0003HTRE() { var computedValue = ""; var expectedValue = 0; var results = ""; var testNode = ""; results = new testResults("HTML0003HTRE"); results.description = "The \"sectionRowIndex\" attribute specifies "+ "the index of this row relative to the "+ "current section (test for TFOOT section)"; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,SECOND); // // examine its "sectionRowIndex" attribute. // computedValue = testNode.node.sectionRowIndex; // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0003HTRE ------------------------- // //------------------------- test case HTML-0004HTRE --------------------------- // // Testing feature - The sectionRowIndex attribute specifies the index of // this row relative to the current section (test // relative for TBODY section) // // Testing approach - Retrieve the fifth TR element of the testing // document and examine the "sectionRowIndex" element. // // Semantic Requirements: 2 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0004HTRE() { var computedValue = ""; var expectedValue = 2; var results = ""; var testNode = ""; results = new testResults("HTML0004HTRE"); results.description = "The \"sectionRowIndex\" attribute specifies "+ "the index of this row relative to the "+ "current section (test for TBODY section)"; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIFTH); // // examine its "sectionRowIndex" attribute. // computedValue = testNode.node.sectionRowIndex; // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0004HTRE ------------------------- // //------------------------ test case HTML-0005HTRE ---------------------------- // // Testing feature - The cells attribute is the collection of cells in // this row. // // Testing approach - Retrieve the first TR element of the testing // document and examine the length of the "cells" element. // // Semantic Requirements: 3 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0005HTRE() { var computedValue = ""; var expectedValue = 6; var results = ""; var testNode = ""; results = new testResults("HTML0005HTRE"); results.description = "The \"cells\" attribute contains the "+ "collection of the cells in this row."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "cells" attribute. // computedValue = testNode.node.cells.length; // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0005HTRE ------------------------- // //------------------------ test case HTML-0006HTRE ---------------------------- // // Testing feature - The "align" attribute contains the horizontal // alignment of the data within the cells of // this row. // // Testing approach - Retrieve the first TR element of the testing // document and examine the "align" element. // // Semantic Requirements: 4 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0006HTRE() { var computedValue = ""; var expectedValue = "CENTER"; var results = ""; var testNode = ""; results = new testResults("HTML0006HTRE"); results.description = "The \"align\" attribute contains the "+ "horizontal alignment of data within "+ "the cells of this row."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "align" attribute. // computedValue = testNode.node.align; computedValue = computedValue.toUpperCase(); // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0006HTRE ------------------------- // //------------------------ test case HTML-0007HTRE ---------------------------- // // Testing feature - the "bgColor" attribute contains the background color // for the rows. // // Testing approach - Retrieve the first TR element of the testing // document and examine the "bgColor" element. // // Semantic Requirements: 5 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0007HTRE() { var computedValue = ""; var expectedValue = "#00FFFF"; var results = ""; var testNode = ""; results = new testResults("HTML0007HTRE"); results.description = "The \"bgColor\" attribute contains the "+ "background color for the rows."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "bgColor" attribute. // computedValue = testNode.node.bgColor; computedValue = computedValue.toUpperCase(); // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0007HTRE ------------------------- // //------------------------ test case HTML-0008HTRE ---------------------------- // // Testing feature - the "ch" attribute contains the alignment character for // cells in a column. // // Testing approach - Retrieve the first TR element of the testing // document, set the "ch" element and determine if it // was set correctly. // // Semantic Requirements: 6 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0008HTRE() { var computedValue = ""; var expectedValue = "."; var results = ""; var testNode = ""; results = new testResults("HTML0008HTRE"); results.description = "The \"ch\" attribute contains the "+ "alignment character for cells in "+ "a column"; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "ch" attribute. // testNode.node.ch = "."; computedValue = testNode.node.ch; computedValue = computedValue.toUpperCase(); // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0008HTRE ------------------------- // //------------------------ test case HTML-0009HTRE ---------------------------- // // Testing feature - the "chOff" attribute contains the offset of alignment // character. // // Testing approach - Retrieve the first TR element of the testing // document, set the "chOff" element and determine if it // was set correctly. // // Semantic Requirements: 7 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0009HTRE() { var computedValue = ""; var expectedValue = "0"; var results = ""; var testNode = ""; results = new testResults("HTML0009HTRE"); results.description = "The \"chOff\" attribute contains the "+ "the offset of alignment character."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "chOff" attribute. // testNode.node.chOff = "0"; computedValue = testNode.node.chOff; // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0009HTRE ------------------------- // //------------------------ test case HTML-0010HTRE ---------------------------- // // Testing feature - the "vAlign" attribute contains the vertical alignment of // data within the cells of this row. // // Testing approach - Retrieve the first TR element of the testing // document and examine the "vAlign" element. // // Semantic Requirements: 8 // // Last modification date - November 3, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0010HTRE() { var computedValue = ""; var expectedValue = "MIDDLE"; var results = ""; var testNode = ""; results = new testResults("HTML0010HTRE"); results.description = "The \"vAlign\" attribute contains the "+ "vertical alignment of data within the "+ "cells of this row."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // examine its "vAlign" attribute. // computedValue = testNode.node.vAlign; computedValue = computedValue.toUpperCase(); // // Write out results // results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0010HTRE ------------------------- // //------------------------ test case HTML-0011HTRE ---------------------------- // // Testing feature - the "insertCell(index)" method inserts an empty TD // cell into this row (test for actual insertion). // // Testing approach - Retrieve the first TR element of the testing // document. Invoke the "insertCell(index)" method with // index = 3. This should result in a cell being inserted // at location number 4. Further test for the length of // the cell collection to check for actual insertion. // // Semantic Requirements: 9 // // Last modification date - November 4, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0011HTRE() { var computedValue = ""; var expectedValue = 7 var results = ""; var testNode = ""; results = new testResults("HTML0011HTRE"); results.description = "The \"insertCell(index)\" method inserts an "+ "empty TD cell into this row (test for actual "+ "insertion)."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // invoke its "insertCell(index)" method with index = 3. // testNode.node.insertCell(FOURTH); computedValue = testNode.node.cells.length; // // Write out results // // resetHTMLData(); results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0011HTRE ------------------------- // //------------------------ test case HTML-0012HTRE ---------------------------- // // Testing feature - the "insertCell(index)" method inserts an empty TD // cell into this row (test for insertion at the // correct location). // // Testing approach - Retrieve the first TR element of the testing // document. Invoke the "insertCell(index)" method with // index = 3. This should result in a cell being inserted // at location number 4. Further test for the length of the // of the collection to check for actual insertion. // // Semantic Requirements: 9 // // Last modification date - November 4, 1999 // // Written by:Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0012HTRE() { var computedValue = ""; var expectedValue = null; var results = ""; var testNode = ""; var cellObject = ""; results = new testResults("HTML0012HTRE"); results.description = "The \"insertCell(index)\" method inserts an "+ "empty TD cell into this row (test for insertion "+ "at correct location)."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // Invoke its "insertCell(index)" method with index = 3. // testNode.node.insertCell(FOURTH); cellObject = testNode.node.cells(FOURTH); computedValue = cellObject.firstChild; // // Write out results // resetHTMLData(); results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0012HTRE ------------------------- // //------------------------ test case HTML-0013HTRE ---------------------------- // // Testing feature - the "deleteCell(index)" method deletes a cell from // this row (test for actual deletion). // // Testing approach - Retrieve the first TR element of the testing // document. Invoke the "deleteCell(index)" method with // index = 3. This should cause the cell at location number 4 // be deleted. Further test for the new length of the cells // collection to ensure that a cell was deleted. // // Semantic Requirements: 10 // // Last modification date - November 4, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0013HTRE() { var computedValue = ""; var expectedValue = 5; var results = ""; var testNode = ""; var rowCollection = ""; var rowObject = ""; results = new testResults("HTML0013HTRE"); results.description = "The \"deleteCell(index)\" method deletes a cell "+ "from this row (test for actual deletion)."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // invoke its "deleteCell(index)" method // with index = 3. // testNode.node.deleteCell(FOURTH); computedValue = testNode.node.cells.length; // // Write out results // resetHTMLData(); results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0013HTRE ------------------------- // //------------------------ test case HTML-0014HTRE ---------------------------- // // Testing feature - the "deleteCell(index)" method deletes a cell from // this row (test for deletion at correct place). // // Testing approach - Retrieve the first TR element of the testing // document. Invoke the "deleteCell(index)" method with // index = 3. This should cause the cell at location number // 4 be deleted. Further test for the new length of the cells // collection to ensure that a cell was deleted. All cells // after cell number four should shift up one position now. // // Semantic Requirements: 10 // // Last modification date - November 4, 1999 // // Written by: Mark LaRoy Zimmerman //---------------------------------------------------------------------------- function HTML0014HTRE() { var computedValue = ""; var expectedValue = "5 GENDER"; var results = ""; var testNode = ""; var objectLength = ""; results = new testResults("HTML0014HTRE"); results.description = "The \"deleteCell(index)\" method deletes a cell "+ "from this row (test for correct cell deletion)."; // // Retrieve targeted data. // testNode = new HTMLNodeObject(TR,FIRST); // // invoke its "deleteCell(index)" method // with index = 3. // testNode.node.deleteCell(FOURTH); objectLength = testNode.node.cells.length; thirdCell = testNode.node.cells(FOURTH).firstChild.data; computedValue = objectLength+" "+thirdCell.toUpperCase(); // // Write out results // resetHTMLData(); results.expected = expectedValue; results.actual = computedValue; return results; } //------------------------ End test case HTML-0014HTRE -------------------------